Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы РЭУБД 35-45.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
45.27 Кб
Скачать

43. Организация связи между таблица. Главная/подчиненная.

Главная таблица {родительская таблица или master) — это таблица, в которой со­держатся основные данные.

Подчиненная таблица {дочерняя таблица или detail) — таблица, значения в полях которой зависят от значений главной таблицы.

Главная таблица может иметь несколько подчиненных таблиц.

Таким образом, при перемещении по записям главной таблицы будет автомати­чески производиться перемещение по записям подчиненной таблицы.

В каждой подчиненной таблице для организации связи с главной таблицей берет­ся индекс, состав полей которого должен частично или полностью совпадать с со­ставом полей главной таблицы.

Само название связи между таблицами реляционной базы данных формируют по типу таблиц:

  • главный—подчиненный,

  • родительский—дочерний или master—detail.

Как было уже сказано на первом занятии, существует четыре вида связи между таблицами:

  1. один к одному;

  2. один ко многим;

  3. много к одному;

  4. много ко многим.  

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

Вид связи один ко многим означает, что одной записи главной таблицы может ставить­ся в соответствие несколько записей в подчиненной таблице. При этом не исклю­чается случай, когда записи главной таблицы не будет поставлено в соответствие ни одной записи в подчиненной таблице. Этот вид связи применяется в базах данных наиболее часто. При перемещении по записям в главной таблице будут автомати­чески становиться доступными записи в подчиненной таблице, у которых значение поля связи равно значению поля связи текущей записи главной таблицы. В качестве примера организации такого вида связи можно привести базу данных, состоящую из двух таблиц, которая содержит данные о покупателях и товаре. В первой, главной таблице хранятся сведения о покупателях (фамилия, имя, отче­ство, наименование организации и т. п.), во второй —сведения о приобретенном данным покупателем товаре. Один покупатель может приобрести один или несколь­ко товаров.

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

Последний вид связи много ко многим означает, что одной записи главной таблицы могут быть сопоставлены несколько записей подчиненной таблицы и, наоборот, одной записи подчиненной таблицы может соответствовать несколько записей главной таблицы. Ярким примером организации такого вида связи является база данных типа «Рас­писание», подразумевающая, что в одной учебной аудитории может заниматься несколько групп и наоборот, одна группа может заниматься в нескольких аудито­риях. Таким образом, данные об аудиториях могут находиться и одной таблице, а о группах — в другой. При этом трудно утверждать, что одна пи таблиц является главной, а вторая — подчиненной.