3. Создание схемы БД. Создание схемы БД заключается в создании связей между таблицами в БД (Рис.37). Определение связей позволяет быстрее создавать запросы, формы или отчеты, включающие несколько таблиц, а также обеспечивать целостность данных, т.е. отсутствие противоречивых сведений в БД.
Рис. 37 Схема данных. Обычно связи создаются между таблицами, если ключевые поля одной таблицы (первичной (главной) таблицы) соответствуют каким-либо полям в другой таблице (связанной (подчиненной) таблицы). Эти поля подчиненной таблицы называются внешним ключом. В связи поля главной таблицы должны быть ключевыми или иметь уникальный индекс.
Допускается установление связи между полями, имеющими разные имена, но одинаковый тип данных и размер, и содержащими данные одного рода.
Между двумя таблицами могут быть установлены связи “один к одному” или “один ко многим”.
Для создания схемы БД необходимо, находясь в окне БД, нажать кнопку Схема данных панели инструментов “База данных”. Это приведет к выводу окна “Схема данных” (Рис.37).
При первоначальном создании связей ACCESS выводит сначала диалоговое окно для добавления таблиц в схему данных (Рис.38).
Рис. 38 Окно Добавление таблицы в схему данных. Задание 2.7:
Открыть окно “Схема данных”:
добавить в схему базы данных таблицы ПРЕДПРИЯТИЯ, ЗАКАЗЫ и ВЫПОЛНЕНИЕ. Изображения таблиц в макете можно перемещать по отношению друг к другу (с помощью мыши за заголовок). Задание 2.8:
В окне “Схема данных” переместить изображения таблиц в следующем порядке: ПРЕДПРИЯТИЯ, ВЫПОЛНЕНИЕ, ЗАКАЗЫ. Окно “Схема данных” содержит макет связей между таблицами в текущей БД. В нем можно просматривать или изменять существующие связи или определять новые связи между таблицами.
Для установления связи между двумя таблицами (Рис.39) надо переместить с помощью мыши поле из главной таблицы на эквивалентное поле в подчиненной таблице. Для того, чтобы переместить сразу несколько полей, надо предварительно нажать клавишу Ctrl и выбрать имена этих полей. Задание 2.9:
В открытом окне “Схема данных”
установить связь между таблицами ПРЕДПРИЯТИЯ и ВЫПОЛНЕНИЕ. Для каждой создаваемой связи можно определить необходимость обеспечения целостности данных (Рис.39), которая:
позволяет вводить в связанное поле подчиненной таблицы только те данные, которые имеются в соответствующем поле главной таблицы;
не позволяет удалить запись из главной таблицы, если с ней связаны одна или несколько записей из подчиненной таблицы.
Рис. 39 Изменение параметров связей. Для связей с обеспечением целостности данных можно дополнительно указать:
Каскадное обновление связанных полей - любое изменение в ключевом поле главной таблицы приведет к автоматическому обновлению соответствующих значений во всех связанных записях;
Каскадное удаление связанных полей - любое удаление записи в главной таблице приведет к автоматическому удалению всех связанных записей в подчиненной таблице.
При задании параметров связи имеется кнопка Объединение, позволяющая выбрать тип объединения, который будет применяться к таблицам с данной связью при их добавлении в запрос. Имеющиеся типы объединений: внутреннее, левое внешнее и правое внешнее. Задание 2.10:
В окне “Схема данных”
обеспечить наличие каскадного обновления и каскадного удаления для связи между таблицами ПРЕДПРИЯТИЯ и ВЫПОЛНЕНИЕ,
просмотреть имеющиеся типы объединений для устанавливаемой связи,
создать аналогичную связь между таблицами ЗАКАЗЫ И ВЫПОЛНЕНИЕ.
Для изменения уже существующей связи надо дважды щелкнуть мышью на требуемой линии связи, что приведет к открытию окна, позволяющего задать параметры связи(Рис.31).
Для удаления связи надо щелкнуть на линии связи в макете и нажать клавишу Del.
Видом макета в окне “Схема данных” можно управлять. Для скрытия таблицы из макета надо нажать клавишу Del или выполнить команду Удалить из меню Правка. В этом случае таблица удаляется только из изображения макета в окне “Схема данных”. Реально она остается в схеме БД вместе со связями, к ней относящимися.
Команда Очистить макет из меню Правка позволяет убрать все таблицы из изображения макета. При этом схема БД не изменяется.
Изменять макет схемы БД можно с помощью команд меню Связи или с помощью панели инструментов “Связь” (Рис.40).
Рис.40Панель инструментов Связь.
Панель инструментов “Связь” (Рис.39), имеет следующие кнопки:
Сохранить (3 кнопка слева)- сохраняет макет схемы БД;
Добавить таблицу (11 кнопка слева)- открывает диалоговое окно для добавления в макет схемы БД новой таблицы;
Отобразить прямые связи (12 кнопка слева)- отображает в макете таблицы, имеющие прямые связи с таблицей, в которой находится фокус;
Отобразить все связи (13 кнопка слева) - отображает в макете все таблицы, для которых определены связи. Задание 2.11:
Сохранить макет схемы БД.
Задание 2.12:
Ввести данные в таблицу ВЫПОЛНЕНИЕ
отдельные предприятия должны выполнять несколько заказов,
отдельные заказы должны выполняться несколькими предприятиями,
Осуществить проверку установленных связей и обеспечения целостности данных (для ввода удобно иметь на экране все 3 таблицы).
|