Пример таблицы базы данных
В предыдущей теме был рассмотрен пример реляционной базы данных предметной области «Учебный процесс». Создадим таблицу ГРУППА этой базы данных. Основные параметры структуры таблицы представлены в табл. 1.
Имя поля | Ключе-вое поле | Уника-льное | Обяза-тельное поле | Тип данных | Размер | Число десят. знаков | Подпись поля | Условие на значение; сообщение об ошибке |
НГ | Да | Да | Да | Текстовый | Номер группы | |||
КОЛ | Нет | Нет | Нет | Числовой | 1 байт | Количест. студентов в группе | >=0 And <=35 Количество студ. больше допустимого | |
ПБАЛЛ | Нет | Нет | Нет | Числовой | С плав. точкой (4 байта) | Проходной балл | >2 And <5 Ошибка в оценке |
Использование данных типа «Поле объекта OLE»
В таблице КАФЕДРА рассматриваемой базы данных предусмотренополе ФОТО,которое должно содержать фотографию заведующего, хранящуюся в формате графического редактора Paint в файле с расширением BMP. Тип данных такого поля должен быть задан при определении структуры таблицы как Полеобъекта OLE. Размещение этого объекта в ноле производится на этапе заполнения полей таблицы. Для отображения объекта OLE необходимо создать в форме или отчете элемент управления — связанную рамку объекта. Внедренный объект сохраняется в файле базы данных и всегда является доступным. Связанный объект сохраняется в файле объекта. Файл объекта можно обновлять независимо от базы данных.
Для размещения объекта OLE в поле необходимо и режиме таблицы установить курсор на этом поле и выполнить командуВставка > Объект. В окнеВставка объекта надо выполнить действия по поиску и выбору файла с фотографией.
Схема данных в Access
Схема данных является не только графическим образом базы данных, но используется Access в процессе работы с базой данных. Создание схемы данных позволяет упростить конструирование многотабличных форм, запросов и отчетов, а также обеспечить поддержание целостности взаимосвязанных данных при корректировке таблиц.
Взаимосвязи таблиц. Схема данных задает структуру базы данных. В ней определяются и запоминаются связи между таблицами. Схема данных базы графически отображается в своем окне, где таблицы представлены списками полей, а связи — линиями между нолями разных таблиц. Схема данных ориентирована на работу с таблицами, отвечающими требованиям нормализации, между которыми могут быть установлены одно-многозначные (1:М) или одно-однозначные (1:1) связи с обеспечением целостности базы данных. Поэтому схема данных строится в соответствии с информационно-логической моделью, технология разработки которой рассмотрена выше.
При построении схемы данных Access автоматически определяет по выбранному полю связи тип связи между таблицами. Если поле, по которому нужно установить связь, является уникальным ключом, как в главной таблице, так и в подчиненной, Access устанавливает связь «один-к-одному». Если поле связи является уникальным ключом в главной таблице, а в подчиненной таблице является не ключевым или входит в составной ключ, Access устанавливает связь «один-ко-многим» от главной таблицы к подчиненной.
Связи-объединения. При выборе в качестве поля связи в главной таблице не ключевого поля Access сообщает, что тип отношения не может быть определен. В этом случае между таблицами возможно установление только связи-объединения. Связь-объединение обеспечивает объединение записей двух таблиц, имеющих одинаковые значения в поле связи. Причем производится объединение каждой записи из одной таблицы с каждой записью из другой таблицы при условии равенства значений в поле связи. Результатом объединения записей, который определяется выбором одного из трех способов, может быть:
• объединение только тех записей, в которых связанные ноля обеих таблиц совпадают;
• объединение тех записей, в которых связанные поля обеих таблиц совпадают, а также объединение всех записей из первой таблицы (для которых пет связанных во второй) с пустой записью второй таблицы;
• объединение тех записей, в которых связанные поля обеих таблиц совпадают, а также объединение всех записей из второй таблицы, для которых нет связанных в первой, с пустой записью первой таблицы.
Обеспечение целостности данных. Для связей типа 1:1 и 1:М можно задать параметр обеспечения целостности данных. Обеспечение целостности данных означает выполнение для взаимосвязанных таблиц перечисленных ниже условии корректировки базы данных:
• в подчиненную таблицу не может быть добавлена запись с несуществующим в главной таблице значением ключа связи;
• в главной таблице нельзя удалить запись, если не удалены связанные с ней записи в подчиненной таблице;
• изменение значений ключа связи главной таблицы должно приводить к изменению соответствующих значений в записях подчиненной таблицы. При попытке пользователя нарушить эти условия в операциях обновления или удаления данных в связанных таблицах Access не допускает выполнения операции.
Установление между двумя таблицами связи типа 1:М или 1:1 и задание для нее параметров целостности данных возможно только при следующих условиях:
• связываемые поля имеют одинаковый тип данных, причем имена полей могут быть различными;
• обе таблицы сохраняются в одной базе данных Access;
• главная таблица связывается с подчиненной по первичному простому или составному ключу (или уникальному индексу) главной таблицы.
Примечание. Access не позволяет создавать связей с параметрами целостности в схеме данных, если ранее введенные в таблицы данные не отвечают требованиям целостности.
Если для выбранной связи обеспечивается поддержание целостности, можно задать режим каскадного обновления и удаления связанных записей. В режиме каскадного обновления связанных записей при изменении значения в поле связи главной таблицы Access автоматически изменит значения в соответствующем поле в подчиненных записях. В режиме каскадного удаления связанных записей при удалении записи из главной таблицы Access выполняет каскадное удаление подчиненных записей на всех уровнях.
Создание схемы данных начинается в окне базы данных с выполнения команды Сервис > Схема данных или нажатия соответствующей кнопки. После этого можно выбрать таблицы, включаемые в схему данных, и приступить к определению связей между ними. Устанавливая связи между парой таблиц в схеме данных, надо выделить в главной таблице уникальное ключевое поле, по которому устанавливается связь, и протащить курсор мыши в соответствующее поле подчиненной таблицы.
Поскольку схема строится для нормализованной базы данных, в открывающемся окнеСвязи автоматически установится тип отношения «один-ко-многим». Для такой связи можно задать параметр Обеспечениецелостности данных,а затем установить флажкиКаскадное обновление связанных полей и Каскадное удаление связанных записей.