Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OPI_6.103_MPV_1.doc
Скачиваний:
0
Добавлен:
16.11.2018
Размер:
1.31 Mб
Скачать

Создание связей между таблицами

Создание связей между таблицами – последний этап проектирования системы таблиц. На этом этапе фактически регистрируются связи между первичными и внешними ключами, запланированные при конструировании таблиц.

Между таблицами можно установить сявзи одного из трех видов: один-ко-многим, многие-ко-многим и один-к-одному.

  • Один-ко-многим является наиболее часто употребляемым видом связи. В этом случае каждой записи таблицы А может соответствовать много записей таблицы Б (или ни одной). В свою очередь, каждой записи таблицы Б соответствует в точности одна запись таблицы А. Таблица А в такой связи называется главной, а таблица Б – связанной или подчиненной.

  • Многие-ко-многим. Многим записям из таблицы А может соответствовать много записей из таблицы Б (и наоборот). Такую связь в Microsoft Access можно организовать при помощи третьей вспомогательной таблицы, в которой каждому первичному ключу из таблицы А сопоставлен первичный ключ из таблицы Б. По сути, связь типа многие-ко-многим представляет собой две связи типа один-ко-многим. При этом таблицы А и Б расположены со стороны один, а вспомогательная таблица – со стороны многие. Такой тип связи используют реже, но существуют ситуации, когда без нее не обойтись. В учебной базе данных Борей примером связи многие-ко-многим является связь между таблицами Заказы и Товары, организованная при момощи таблицы Заказано.

  • Один-к-одному. Одной записи таблицы А соответствует в точности одна запись таблицы Б и наоборот. Этот тип связи практически никогда не применяется. Единственный случай, когда применение этого типа связи оправдано – разбивка таблицы, содержащей очень большое количество полей, на несколько частей.

Для любого из перечисленных выше типов связей существует три способа объединения. Установленный тип объединения влияет на результаты выборки данных из связанных таблиц.

  • Внутренне объединение. Объединяются только те записи из таблиц, связанные поля которых совпадают. Остальные записи в итоговую выборку не попадут. Например, таблицы Товары и Типы связаны между собой по полям КодКатегориии. При выборке записей из этих таблиц в итоговую выборку попадут только те записи из таблицы Типы, ссылка на которые есть в таблице Товары. Этот тип объединения используется в подавляющем большинстве случаев.

  • Левое внешнее объединение. Объединяются все записи таблицы со стороны один и только те записи таблицы со стороны многие, значения связанного поля которых совпадают со значениями соотвествующего поля первой таблицы. Попросту говоря, к результатам выборки по внутреннему объединению добавятся все записи из таблицы со стороны один, первоначально в нее не вошедшие. Соотвествующие поля этих записей второй таблицы в выборке будут иметь пустое (Null) значение.

  • Правое внешнее объединение. Аналогично левому внешнему объединению, но таблицы со стороны один и со стороны многие меняются ролями, т.е. к результатам выборки по внутреннему объединению добавятся не вошедшие в нее записи из таблицы со стороны многие.

Тут вы можете оставить комментарий к выбранному абзацу или сообщить об ошибке.

Оставленные комментарии видны всем.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]