7.2. Этапы проектирования
Рассмотрим этапы процесса проектирования базы данных с использованием метода «сущность-связь»:
Выделение сущностей и связей между ними.
Построение диаграмм ER-типа с учетом всех сущностей и их связей.
Формирование набора предварительных отношений с указанием первичного ключа для каждого отношения и использованием диаграмм ER-типа.
Добавление неключевых атрибутов в отношения.
Приведение предварительных отношений к нормальной форме Бойса-Кодда с помощью нормальных форм.
Пересмотр ER-диаграмм в следующих случаях:
Некоторые отношения не приводятся к БКНФ;
Некоторым атрибутам не находится логически обоснованных мест в предварительных отношениях.
После преобразования ER-диаграмм проводят повторное выполнение шагов, начиная с этапа 1.
7.3. Правила формирования отношений Формирование отношений для связи 1:1
Правило 1. Если степень бинарной связи 1:1 и класс принадлежностей обеих сущностей обязательный, то формируется одно отношение. Первичным ключом отношения может быть любой ключ из двух сущностей.
О 1 1 О
К1, … К2, … К1К2
Рис. 7.9. Диаграмма и отношения для правила 1
На рис. 7.9 использованы следующие обозначения: С1, С2 – сущности 1 и 2; К1, К2 – ключи сущностей; R1 – отношение, сформированное на основе исходных сущностей; К1К2 означает, что ключом отношения R1 может быть либо К1, либо К2.
Пример 1. Сущность ПРЕПОДАВАТЕЛЬ (НП, ФИО, Стаж), где НП – код преподавателя.
Сущность ДИСЦИПЛИНА (КД, Часы), где КД – код дисциплины, Часы – часы, отводимые под дисциплину. Степень связи между сущностями 1:1 и НП – обязательный класс принадлежности, то формируется одно отношение ПРЕПОДАВАТЕЛЬ_ДИСЦИПЛИНА (НП, ФИО, Стаж, КД, Часы), вид которого показан на рис. 7.10.
ПРЕПОДАВАТЕЛЬ_ДИСЦИПЛИНА
НП |
ФИО |
Стаж |
КД |
Часы |
П1 |
Иванов И.М. |
5 |
К1 |
62 |
П2 |
Петров М.И. |
7 |
К2 |
74 |
П3 |
Сидоров Н.Г. |
10 |
К3 |
102 |
П4 |
Егоров В.В |
5 |
К4 |
80 |
Рис. 7.10. Отношение, полученное по правилу 1
Правило 2. Если степень связи 1:1 и класс принадлежности одной сущности обязательный, а второй – необязательный, то под каждую из сущностей формируется по отношению со своими первичными ключами. Далее к отношению, сущность которого имеет обязательный класс принадлежности, добавляется в качестве атрибута ключ второй сущности (с необязательным классом принадлежности). Таким образом, создаются условия для связывания отношений. На рис. 7.11 приведены диаграмма ER-типа и отношения, сформированные по правилу 2 на ее основе. В качестве примера рассмотрим отношение, приведенное на рис. 7.12, содержащее информацию о преподавателях и дисциплинах. В отношении класс принадлежности сущности ПРЕПОДАВАТЕЛЬ является обязательным, а сущности ДИСЦИПЛИНА – необязательным.
О 1 1 Н
К1, … К2, … К1, К2 К2,
Рис. 7.11. Диаграмма и отношения для правила 2
ПРЕПОДАВАТЕЛЬ_ДИСЦИПЛИНА
НП |
ФИО |
Стаж |
КД |
Часы |
П1 |
Иванов И.М. |
5 |
К1 |
62 |
П2 |
Петров М.И. |
7 |
К2 |
74 |
П3 |
Сидоров Н.Г. |
10 |
К3 |
102 |
- |
- |
5 |
К4 |
80 |
Рис. 7.12. Исходное отношение
Применив к отношению, представленному на рис. 7.12, правило 2, получим два отношения , приведенные на рис. 7.13.
ПРЕПОДАВАТЕЛЬ ДИСЦИПЛИНА
НП |
ФИО |
Стаж |
КД |
|
КД |
Часы |
П1 |
Иванов И.М. |
5 |
К1 |
|
К1 |
62 |
П2 |
Петров М.И. |
7 |
К2 |
|
К2 |
74 |
П3 |
Сидоров Н.Г. |
10 |
К3 |
|
К3 |
102 |
|
|
|
|
|
К4 |
80 |
Рис. 7.13. Отношения, полученные по правилу 2
В отношение ПРЕПОДАВАТЕЛЬ добавили атрибут КД, являющийся ключом сущности ДИСЦИПЛИНА, обладающей необязательным классом принадлежности.
Правило 3. Если степень связи 1:1 и класс принадлежности обеих сущностей необязательный, то необходимо использовать три отношения. Два отношения соответствуют связываемым сущностям, ключи которых являются первичными в этих отношениях. Третье отношение является связным между первыми двумя, поэтому его ключ объединяет ключевые атрибуты связываемых отношений. На рис. 7.14 приведены диаграмма ER-типа и отношения, сформированные по правилу 3 на ее основе.
Н 1 1 Н
К1, … К2, … К1 К2, …
К1,К2
Рис. 7.14. Диаграмма и отношение для правила 3
На рис. 7.15 приведены примеры отношений, подтверждающие необходимость использования трех отношений в случае, когда обе связываемые сущности имеют необязательный класс принадлежности.
а) одно отношение
ПРЕПОДАВАТЕЛЬ_ДИСЦИПЛИНА
НП |
ФИО |
Стаж |
КД |
Часы |
П1 |
Иванов И.М. |
5 |
К1 |
62 |
П2 |
Петров М.И. |
7 |
- |
- |
П3 |
Сидоров Н.Г. |
10 |
К3 |
102 |
- |
- |
5 |
К4 |
80 |
б) Два отношения
ПРЕПОДАВАТЕЛЬ ДИСЦИПЛИНА
НП |
ФИО |
Стаж |
КД |
|
КД |
Часы |
НП |
П1 |
Иванов И.М. |
5 |
К1 |
|
К1 |
62 |
П1 |
П2 |
Петров М.И. |
7 |
- |
|
К2 |
74 |
П3 |
П3 |
Сидоров Н.Г. |
10 |
К2 |
|
К3 |
102 |
|
в)Три отношения
ПРЕПОДАВАТЕЛЬ ВЕДЕТ ДИСЦИПЛИНА
НП |
ФИО |
Стаж |
|
НП |
КД |
|
КД |
Часы |
П1 |
Иванов И.М. |
5 |
|
П1 |
К1 |
|
К1 |
62 |
П2 |
Петров М.И. |
7 |
|
П3 |
К2 |
|
К2 |
74 |
П3 |
Сидоров Н.Г. |
10 |
|
|
|
|
К3 |
102 |
Рис. 7.15. варианты отношений для правила 3
