Пример.
Пример Рассмотрим две сущности Клиент и Заказ Одной записи в таблице Клиенты может соответствовать много записей в таблице Заказы, так как один клиент может сделать несколько заказов, а заказ может быть только от одного клиента. Обратите внимание, что первичный ключ главной таблицы Клиент внедряется в подчиненную таблицу Заказ. На рисунке вторичный или чужой ключ обозначен символом FK (F oreign K ey) В MS Access данная связь графически изображается следующим образом В MS Access связь один ко многим создается в том случае, когда поле одной из таблиц является ключевым Отношение (связь) один - к – одному (1:1). Запись в таблице А может иметь не более одной связанной записи в таблице В и наоборот. Содержимое таких таблиц, как правило, можно объединить в одну. Этот тип связи используется довольно редко. Такие связи имеет смысл устанавливать для разделения таблиц с очень большим количеством полей, для отделения части таблицы по соображениям защиты или если не все данные из одной таблицы используются в другой. В данном случае только незначительная часть сотрудников занимаются серьезно спортом и имеют спортивные разряды, поэтому данные о сотрудниках спортсменах выделены в отдельную таблицу. В MS Access связь один к одному создается только в том случае, когда оба поля являются ключевыми Отношение (связь) многие ко многим (N:M). Одной записи в таблице А может соответствовать несколько записей в таблице В, а одной записи в таблице В может соответствовать много записей в таблице А. Пример. У одного автора может быть несколько книг, а у книги может иметься несколько авторов Такую связь в MS Access реализовать невозможно. Такая связь реализуется только при помощи третьей таблицы – т аблицы связки, имеющей составной первичный ключ В MS Access данная связь графически изображается следующим образом Внимание! Связь многие ко многим преобразуется в две связи один ко многим при помощи таблицы связки Установление связи между таблицами возможно, если - Связываемые поля имеют одинаковый тип данных. Исключение составляет поле счетчик, так как поле счетчик, так как не может быть использовано в качестве вторичного ключа. Поле счетчик может быть связано с числовым полем, имеющим размер длинное целое. - Таблицы хранятся внутри одной БД. - Главная таблица связывается с подчиненной по ключу
При создании связи между таблицами устанавливается параметр целостности данных, а также параметры каскадного обновления и удаления связанных записей.
|