Базы данных. Сильные и слабые связи между типами сущностей. Унарные связи. Рекурсивная связь

Сильные и слабые связи между типами сущностей. Унарные связи. Рекурсивная связь


Содержание


1. Понятие сильной и слабой связи. Каким образом определяются сильные и слабые связи?

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

 

2. Пример сильной связи для типа связи 1:M

Пусть нужно построить базу данных учебного процесса, в котором выделяются сущности Группа и Студент. Сущность Студент есть слабой по отношению к сущности Группа. Это объясняется тем, что Студент находится в подчиненном состоянии по отношению к Группе, в которой он учится.
Между сущностями Группа и Студент существует сильная связь. Студент не может учиться в учебном заведении, не будучи включенным к некоторую Группу. То есть, связь всегда будет существовать.

На рисунке 1 изображена связь между сущностями Студент и Группа.

Базы данных. Связь между сущностями Студент и Группа

Рисунок 1. Связь между сущностями Студент и Группа

 

3. Примеры слабых связей для типа связи 1:M

Пример 1. При проектировании базы данных учебного заведения связь может существовать между типами сущностей Работник (Преподаватель) и Кабинет. В данном случае Работник это слабый тип сущности, Кабинет – это сильный тип сущности. Согласно штатному расписанию Работник (Преподаватель) может быть закреплен как заведующий Кабинетом, за который он получает надбавку к заработной плате. Но это есть не обязательное условие. Тип сущности Работник может существовать автономно без надбавки за Кабинет, поскольку имеет другие источники начисления заработной платы. Поэтому, между типами сущностей Работник (Преподаватель) и Кабинет существует слабая связь, которая изображена на рисунке 2.

Наличие слабой связи обозначается маленьким кружком со стороны необязательной сущности. Для Работник установлена мощность связи M так как несколько работников могут получать надбавки за кабинет (теоретически).

Базы данных. Слабая связь между типами сущностей Работник и Кабинет

Рисунок 2. Слабая связь между типами сущностей Работник и Кабинет

Пример 2. Для типов сущностей Студент и Дисциплина существует связь. Студент изучает Дисциплину. В соответствии с учебным планом Студент обязательно изучает определенный перечень дисциплин на протяжении всего обучения. Однако, некоторые дисциплины могут быть рассмотрены как факультативные – такие, которые выбирает Студент для дополнительного изучения. Если допустить, что существует тип сущности Факультативная_Дисциплина, то между типами сущностей Студент и Факультативная_Дисциплина существует слабая связь, которая изображена на рисунке 3.
При таком способе проектирования базы данных, тип сущности Дисциплина делится на два типа сущности: Обязательная_Дисциплина и Факультативная_Дисциплина.
При создании реляционной таблицы Subject_Optional информация о студенте необязательна и может содержать значение NULL.

Базы данных. Изображение слабой связи между типами сущностей

Рисунок 3. Изображение слабой связи между типами сущностей Student и Subject_Optional.



 

4. Унарные связи. Рекурсивные связи. Пример описания

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

Пример. Пусть задана штатно-организационная структура должностей учебного заведения.

В примере с помощью унарной рекурсивной связи разработана диаграмма ER-модели штатной структуры учебного заведения (рисунок 4).

Базы данных. Упрощенная организационно-штатная структура должностей учебного заведения

Рисунок 4. Упрощенная организационно-штатная структура должностей учебного заведения

На рисунке 5 изображена унарно-рекурсивная связь на диаграмме ER-модели.

Базы данных. Унарно-рекурсивная связь на диаграмме ER-модели

Рисунок 5. Унарно-рекурсивная связь на диаграмме ER-модели

Если, на основании унарно-рекурсивной связи построить таблицу, то первичный ключ ID_Position и внешний ключ ID_Parent будут замыкаться в этой таблице. Рисунок 6 отображает таблицу данных, которая соответствует ER-модели, изображенной на рисунке 5.

Базы данных. Таблица данных, которая соответствует ER-модели представляющей рекурсивную связь

 


Связанные темы