Отношения могут быть связаны следующими типами связей:
- один-к-одному (1:1);
- один-ко-многим (1:M);
- многие-ко-многим (M:M).
Рассмотрим сущность этих связей на примере следующих отношений. Пусть книга в библиотеке описывается отношением
КНИГА = (КНИГА_N, АВТОР_N, НАЗВАНИЕ, ИЗДАТЕЛЬСТВО_N).
Каждая книга имеет место на полке
МЕСТО = (МЕСТО_N, КНИГА_N).
Каждая книга выпускается издательством
ИЗДАТЕЛЬСТВО = (ИЗДАТЕЛЬСТВО_N, АДРЕС).
У каждой книги есть автор
АВТОР = (АВТОР_N, ФАМИЛИЯ, ИМЯ, ОТЧЕСТВО).
Связь один-к-одному означает, что в каждый момент времени одной записи отношения A соответствует только одна запись отношения B и наоборот. Например, каждая книга имеет одно место на полке и на каждом месте стоит только одна книга
.
Связь между отношениями осуществляется по полю КНИГА_N.
Связь один-ко-многим предполагает, что одной записи отношения A соответствуют несколько записей отношения B, но одной записи отношения B соответствуют только одна запись отношения A. Например, одно издательство может издать несколько книг, но книга издается только одним издательством.
.
Связь между отношениями осуществляется по полю ИЗДАТЕЛЬСТВО_N.
При связи многие-ко-многим одной записи отношения A соответствуют несколько записей отношения B и наоборот. Например, один автор может написать несколько книг, и у книги может быть несколько авторов
.
Связь между отношениями осуществляется по полю АВТОР_N.