Хелпикс

Главная

Контакты

Случайная статья





Работа с СУБД MS Access. Создание межтабличных связей



Работа с СУБД MS Access

A

|

версия для печати

< Лекция 6 || Лекция 7: 12 || Самостоятельная работа 1 >

Создание межтабличных связей

Целостность данных - это набор правил, гарантирующих, что Access будет работать только с непротиворечивыми данными и разрешёнными операциями.

Активизировать команду Сервис \ Схема данных в диалоговом окне Схема данных:

1. Щёлкнуть по кнопке Добавить таблицу.

2. В диалоговом окне из списков выбрать таблицы, между которыми создаются связи. Закрыть окно Добавление таблицы. Искомые таблицы появятся в окне Схема данных.

3. Выделить в 1-й таблице ключевое поле и с помощью мыши перетащить его на одноименное поле 2-й таблицы. При отпускании кнопки мыши откроется диалоговое окно Связи.

4. Установить флаг Обеспечение целостности данных.

5. Щёлкнуть по кнопке Создать. Появится связь 1:1.

Предположим, что требуется установить связь между таблицами "Кафедра" и "Преподаватель" через поле ККАФ (код кафедры). В таблице "Кафедра" это поле является уникальным ключом, а в таблице "Преподаватель" - внешним ключом. Если схема данных создается заново, то при нажатии на кнопку "Схема данных" поверх окна схемы данных появится окно "Добавление таблицы". В этом окне следует выделить требуемые таблицы и нажать "Добавить"( рис. 6.5)


Рис. 6.5.Окно добавления таблиц

В результате в окно схемы данных будут добавлены графические образы двух таблиц:


Рис. 6.6.Установление связей

Необходимо перетащить мышью поле ККАФ таблица "Кафедра" на поле ККАФ таблицы "Преподаватель". В открывшемся окне "Изменение связей" следует установить флажок "Обеспечение целостности данных". В этом случае Access будет выдавать предупреждающие сообщения о неправильном вводе данных, если, например, в поле ККАФ подчиненной таблицы "Преподаватель" будет введено значение, отсутствующее в поле ККАФ базовой таблицы "Кафедра" ( рис. 6.6).

Обратите внимание, что Access автоматически определил тип связи как "один-ко-многим" ( рис. 6.7).


Рис. 6.7.Изменение связей

Можно также установить флажки "каскадное обновление связей" и "каскадное удаление связей". В этом случае Access автоматически скорректирует (удалит) записи в подчиненных таблицах, если будут изменены записи в базовой таблице.

После нажатия на кнопку "Создать", образы таблиц будут соединены связями как показано на рисунке. Ключевые в базовых таблицах выделяются жирным шрифтом ( рис. 6.8).


Рис. 6.8.Установление связей

Для установления связей по составному ключу необходимо в окне "Изменение связей" в полях "Таблица/Запрос" и "Связанная таблица/запрос" вручную выбрать из списков пары связываемых полей. На рис. 6.9 показан пример связи по составному ключу.


Рис. 6.9.Установление связей с составными ключами

Если перетащить поле, не являющееся ключевым и не имеющее уникального индекса, на другое поле, которое также не является ключевым и не имеет уникального индекса, создается неопределенное отношение. В запросах, содержащих таблицы с неопределенным отношением, Microsoft Access по умолчанию отображает линию объединения между таблицами, но условия целостности данных при этом не накладываются и нет гарантии уникальности записей в любой из таблиц.

Образовавшиеся межтабличные данные отображаются в окне Схема данных в виде линий, соединяющие 2 поля разных таблиц. Одна из таблиц считается главной, а другая - связанной. Главная - это та таблица, которая участвует в связи своим ключевым полем.

Связь между таблицами позволяет:

· Исключить возможность удаления или изменения данных в ключевом поле главной таблицы, если с этим полем связаны поля других таблиц;

Установить флаг Обеспечение целостности данных.

· При удалении данных в ключевом поле главной таблицы автоматически удалить соответствующие данные в полях связанных таблиц.

Установить дополнительно флаги Каскадное обновление связанных полей и Каскадное удаление связанных записей.



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.