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