Реляционные базы данных обрабатывают связи между объектами, устанавливая отношения между таблицами, которые отражают зависимости между сущностями. 2
Основой для соединений служит сопоставление первичного ключа родительской таблицы с внешним ключом дочерней. 2 Первичные и внешние ключи позволяют установить иерархию «родитель — потомок». 2
Существуют разные типы связей между таблицами, например:
- «Один-к-одному». 25 Каждой записи в родительской таблице соответствует лишь одна запись в дочерней (и наоборот). 2 Для создания такой связи оба связанных столбца должны иметь первичные ключи или ограничения, поддерживающие уникальность. 2
- «Один-ко-многим». 25 Одной записи в родительской таблице может соответствовать множество записей в дочерней, однако каждая запись дочерней таблицы может быть связана только с одной записью родительской. 2
- «Многие-ко-многим». 25 Одной записи в родительской таблице может соответствовать множество записей в дочерней и, вплоть до обратного, для создания подобной связи требуется ввод третьей таблицы, чей первичный ключ формируется из внешних ключей объединённых таблиц. 2
Связи также классифицируют по типу: 2
- Идентифицирующая связь возникает, когда экземпляр дочерней сущности может быть строго определён с помощью родительской. 2 В этом случае атрибуты первичного ключа родительской сущности становятся частью первичного ключа дочерней сущности, делая её зависимой. 2
- Неидентифицирующая связь, наоборот, предполагает, что дочерняя сущность может быть определена по-другому, не полагаясь на родителя. 2 В таком случае атрибуты первичного ключа родительской сущности выступают как обычные атрибуты дочерней таблицы. 2