Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 2-4 по Access.doc
Скачиваний:
7
Добавлен:
01.04.2025
Размер:
104 Кб
Скачать
☆

2.2.2. Связывание таблиц в Access

В реляционной модели очень важным является понятие связи между таблицами. Связь (relationship) – это логическое отношение между объектами, представленными таблицами. Связь между записями двух таблиц основана обычно на совпадении значений атрибутов, по которым эта связь устанавливается. Чтобы отобразить данные одной таблицы совместно с относящимися к ним записями другой таблицы, в Access должно быть средство для связывания таблиц. Для существования связей между таблицами они ( эти таблицы) должны иметь поля с общими значениями.

Чтобы было понятно, о чем идет речь, рассмотрим пример базы данных Контакты, созданной в Access. В этой базе данных существует две таблицы: Контакты и Звонки. Обе эти таблицы имеют поле КодКонтакта. В таблице Контакты поле КодКонтакта выполняет роль уникального идентификатора записи для каждого конкретного контакта (т.е. значение в этом поле однозначно определяет контакт), в то время как в таблице Звонки поле КодКонтакта служит полем связи, и его значение указывает на человека, которому «принадлежит» каждая конкретная запись о звонке в таблице Звонки (понятно, что каждая запись о звонке имеет отношение к какому-то определенному лицу).

Типы связей

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

  • Один к одному (взаимно-однозначный). Этот тип связи существует, когда по обе стороны связи для любого значения в связующем поле имеется только одна запись. Например, между таблицами Заказы и Заказчики будет взаимно-однозначная связь, если они связаны по полю КодЗаказчика (у каждого заказа только один заказчик).

  • Один ко многим. Когда по одну сторону связи для каких-то значений в связанном поле может быть несколько записей, а по другую – только одна. Связь между таблицами Контакты и Звонки – пример такой связи. Для каждого лица в таблице Контакты имеется только одной записи, но в таблице Звонки для любого лица может находиться несколько записей.

  • Многие ко многим. Данный тип связи существует в случае, если значения в полях связи неоднократно встречаются в записях той и другой связанных таблиц. Например, между таблицей Занятия и таблицей Члены клуба, если связать их по полю КодСтудента, будет связь «многие ко многим», поскольку вполне возможно, что студент побывает на нескольких занятиях и является членом нескольких клубов.

Если при создании таблиц вы используете Мастер баз данных или Мастер таблиц, вам нет необходимости определять отношения между таблицами самостоятельно, поскольку программа это делает автоматически. Тем не менее возникает необходимость связать таблицы самостоятельно. Эта задача выполняется в окне Схема данных (Relationships). Чтобы открыть окно Схем данных, выберите в меню Сервис (Tools) пункт Схем данных (Relationships) или щелкните правой кнопкой мыши в любом месте окна базы данных и выберите пункт Схема данных (Relationships) в контекстном меню.