Связи
Связывание таблиц
Связывание таблиц
Связывание таблиц
Связывание таблиц
675.30K
Category: databasedatabase

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

1. Связи

Связь – это графически изображаемая ассоциация,
устанавливаемая между двумя типами сущностей.
В любой связи выделяются два конца (в соответствии с
существующей парой связываемых сущностей), на каждом из
которых указываются имя конца связи, степень конца связи
(сколько экземпляров данного типа сущности должно
присутствовать в каждом экземпляре данного типа связи),
обязательность связи
Связь представляется в виде ненаправленной линии,
соединяющей две сущности или ведущей от сущности к ней же
самой.
• Существует несколько типов связей:

связь “один-к-одному”

связь “один-ко-многим”

связь “многие-ко-многим”.

2.

Характеристика видов связей таблиц
один — один (1:1);
один — много (1:М);
много — один (М: 1);
много — много (М:М или M:N).
Характеристика полей
связи по видам
1:1
1:М
М:1
М:М
Поля связи основной
таблицы
являются
ключом
являются
ключом
не являются
ключом
не являются
ключом
Поля связи
дополнительной
таблицы
являются
ключом
не являются
ключом
являются
ключом
не являются
ключом

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

Связь
“один-к-одному”
представляет
собой
простейший вид связи данных, когда первичный ключ
таблицы является в то же время внешним ключом,
ссылающимся на первичный ключ другой таблицы.
ОДИН-К-ОДНОМУ (1:1): в каждый момент времени каждому
представителю (экземпляру) сущности А соответствует 1 или
0 представителей сущности В:
Такую связь бывает удобно устанавливать тогда, когда невыгодно держать
разные по размеру (или по другим критериям) данные в одной таблице.
Например, можно выделить данные с подробным
описанием изделия в отдельную таблицу с установлением связи
“один-к-одному” для того чтобы не занимать оперативную
память, если эти данные используются сравнительно редко.

4.

Связь вида 1:1
Связь вида 1:1 образуется в случае, когда все поля связи
основной
и
дополнительной
таблиц
являются
ключевыми.
Поскольку значения в ключевых полях обеих таблиц
не повторяются, обеспечивается взаимно-однозначное
соответствие записей из этих таблиц.
Сами
таблицы,
по
сути,
здесь
становятся
равноправными.

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

Связь “один-ко-многим” в большинстве случаев
отражает реальную взаимосвязь сущностей в предметной
области. Она реализуется уже описанной парой “внешний
ключ-первичный ключ”, т.е. когда определен внешний ключ,
ссылающийся на первичный ключ другой таблицы.
Связь ОДИН-КО-МНОГИМ (1:М): одному представителю
сущности А соответствуют 0, 1 или несколько
представителей сущности В.
Квартира может пустовать, в ней может жить один или
несколько жильцов.

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

Так как между двумя сущностями возможны связи в обоих
направлениях, то существует еще два типа связи МНОГИЕ-КОДНОМУ (М:1) и МНОГИЕ-КО-МНОГИМ (М:N).
Отношение «много-ко-многим» имеет место, когда
одной записи главной таблице может соответствовать
несколько записей подчиненной таблицы и одновременно
одной записи подчиненной таблицы - несколько записей
главной таблицы.
Связь “многие-ко-многим” в явном виде в
реляционных базах данных не поддерживается. Однако
имеется ряд способов косвенной реализации такой связи,
которые с успехом возмещают ее отсутствие.
Один
из
наиболее
распространенных
способов
заключается во введении дополнительной таблицы, строки
которой состоят из внешних ключей, ссылающихся на
первичные ключи двух таблиц

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


множество связей между одними и теми же
сущностями
(пациент, имея одного лечащего врача, может иметь также
несколько врачей-консультантов; врач может быть лечащим
врачом нескольких пациентов и может одновременно
консультировать несколько других пациентов);
тренарные связи
• (врач может назначить несколько пациентов на несколько
анализов, анализ может быть назначен несколькими врачами
нескольким пациентам и пациент может быть назначен на
несколько анализов несколькими врачами);
• связи более высоких порядков, семантика (смысл) которых
иногда очень сложна.
English     Русский Rules