Связывание нескольких таблиц
Цель работы: изучение и закрепление на практике методов контроля вводимых данных путем связывания таблиц.
Методические указания
Каждая БД представляет обычно несколько таблиц, число которых может доходить, в общем случае, до десятков и сотен. При этом часто оказывается, что в разных таблицах хранятся одинаковые данные. Пример: таблицы Студент и Деканат включают одинаковые поля Факультет (рис. 3.1). В этом случае контроль заполнения данного поля в таблице Студент путем создания поля-списка нецелесообразен, так как изменение названий факультетов или их числа в таблице Деканат потребует модификации поля-списка, т.е. изменения необходимо производить сразу в двух таблицах. В то же время связывание этих полей устраняет данную проблему, т.е. изменения таблицы Деканат автоматически будет проявляться при заполнении таблицы Студент.
ДЕКАНАТ
-
Факультет
Декан
Телефон
Аудитория
СТУДЕНТ
ФИО |
Факультет |
Группа |
Пол |
Адрес |
Школа |
Стипендия |
|
|
|
|
|
|
|
Рис. 3.1
Для связывания полей необязательно совпадение их имен (например, они могут называться в одной таблице как Факультет, а в другой - Фак-т), но обязательно совпадение их типов.
Связывание производится по следующему алгортму:
Сверяемая таблица (например, СТУДЕНТ) открывается в режиме Конструктор.
В списке типов полей выбирается опция Мастер подстановок
Далее >
В появившейся карточке устанавливается опция Столбец подстановок использует значения таблицы или запроса и нажимается кнопка . .Далее >
Далее СУБД запрашивает имя сверочной таблицы. Для этого в появившемся списке всех таблиц БД необходимо выделить щелчком мыши необходимую и нажать кнопку .>
<
Далее >
В появившейся карточке слева приведен список всех полей выбранной таблицы, а справа находится окно, в которое переносятся связываемые поля (рис. 3.2). Для этого необходимо выделить мышью поле и нажать кнопку . Если поле было выбрано ошибочно, то его выбор отменяется кнопкой . Завершается выбор также нажатием кнопки
Доступные
поля Выбранные
поля
Факультет
Декан
Телефон
Аудитория
>
<
Далее
>
Рис. 3.2
В
Далее >
Готово
появившемся окошке компьютер предлагает изменить название связываемого поля в целевой таблице на название связываемого поля в сверочной таблице. Целесообразно, при разных названиях, отказаться от замены и ввести уже существующее название. Далее снова нажимается клавиша .В последнем окне нажимается клавиша .
Выполнение лабораторной работы
Создать таблицу ОТДЕЛ, включающую следующие поля:
название отела. Из него в дальнейшем будут выбираться значения поля Отдел таблицы СЛУЖАЩИЙ;
начальник отдела (текстовое 20);
телефон отдела (текстовое 8. маска вида 27-13-56);
аудитория (целый).
Заполнить таблицу 5-ю записями.
Создать таблицу ДОЛЖНОСТЬ, включающую следующие поля:
названия должностей. Из него в дальнейшем будут выбираться значения поля Должность таблицы СЛУЖАЩИЙ;
образование, соответствующее данной должности (текстовое 10. Представляет перечень: высшее, незаконченное высшее, среднее специальное, среднее).
Заполнить таблицу 5-ю записями.
Связать поля Отдел и Должность таблицы СЛУЖАЩИЙ с однотипными полями таблиц ОТДЕЛ и ДОЛЖНОСТЬ.
Дополнить таблицу СЛУЖАЩИЙ 10-ю записями. Результат показать преподавателю.
Лабораторная работа №3