Автор: Пользователь скрыл имя, 18 Ноября 2012 в 14:40, лекция
Лекции с глоссарием по базам данным
Степень связи и класс принадлежности сущности является важнейшими характеристиками, используемыми при проектировании БД ER–методом.
Единицы означают степень связи.
|
Рис. 7.8 Диаграмма ER-типа связи степени 1:1, класс принадлежности обоих сущностей необязательный |
|
Рис. 7.9 Диаграмма ER-типа связи степени 1:1, класс принадлежности сущности необяз. - обяз. |
|
Рис. 7.10 Диаграмма ER-типа связи степени 1:1, класс принадлежности сущности обяз. – необяз. |
|
Рис. 7.11 Диаграмма ER-типа связи степени 1:1, класс принадлежности обоих сущностей обязательный |
Каждый преподаватель может читать одновременно несколько курсов. Каждый курс читается не более чем одним преподавателем. Степень связи 1:N:
Рис. 7.12 Диаграмма ER-типа связи степени 1:N |
необяз. |
необяз. |
Рис. 7.13 Диаграмма ER-типа связи степени 1:N |
обяз. |
необяз. |
Рис. 7.14 Диаграмма ER-типа связи степени 1:N |
необяз. |
обяз. |
Рис. 7.15 Диаграмма ER-типа связи степени 1:N |
обяз. |
обяз. |
Каждый преподаватель читает не
более одного курса, каждый курс читается
более чем одним
|
||
Рис. 7.16 Диаграмма ER-типа связи степени N:1 |
необяз. |
необяз. |
|
||
Рис. 7.17 Диаграмма ER-типа связи степени N:1 |
обяз. |
необяз. |
|
||
Рис. 7.18 Диаграмма ER-типа связи степени N:1 |
необяз. |
обяз. |
|
||
Рис. 7.19 Диаграмма ER-типа связи степени N:1 |
обяз. |
обяз. |
Каждый преподаватель может читать несколько курсов, каждый курс может читаться несколькими преподавателями. Степень связи M:N:
|
||
Рис. 7.20 Диаграмма ER-типа связи степени M:N |
необяз. |
необяз. |
|
||
Рис. 7.21 Диаграмма ER-типа связи степени M:N |
обяз. |
необяз. |
|
||
Рис. 7.22 Диаграмма ER-типа связи степени M:N |
необяз. |
обяз. |
|
||
Рис. 7.23 Диаграмма ER-типа связи степени M:N |
обяз. |
обяз. |
Связь ЧИТАЕТ, существующая между сущностями ПРЕПОДАВАТЕЛЬ и КУРС называется бинарной, поскольку она связывает две сущности. Связи между тремя или более сущностями мы будем называть связями более высокого порядка..
Проектирование базы данных с помощью метода “сущность-связь” можно разбить на несколько шагов:
Пробуем составлять предварительные отношения путем перебора всех возможных вариантов.
Рассмотрим ситуацию: Бинарная связь степень 1:1, и класс принадлежности обеих сущностей является обязательным.
Рис. 7.24 ER-диаграмма для бинарной связи “Преподаватель читает Курс” степени 1:1 и классом принадлежности обеих |
Таблица 7.1 R Универсальное отношение | |||||
НП |
Фам. |
Тел. |
НК |
V |
В этом отношении сущность ПРЕПОДАВАТЕЛЬ дополнена двумя атрибутами – фамилия преподавателя, телефон преподавателя. Сущность КУРС дополнена атрибутом V – объем в часах. |
П1 |
Иванов |
32-22-11 |
К3 |
48 | |
П2 |
Минин |
33-98-76 |
К1 |
18 | |
П3 |
Орлов |
34-87-98 |
К4 |
54 | |
П4 |
Петров |
35-78-00 |
К2 |
36 |
В этом случае помещение всех атрибутов в одно отношение R (НП, Фам, Тел, НК, V) является правильным решением. Т.к. степень связи 1:1 и класс принадлежности является обязательным для обеих сущностей, гарантируется отсутствие пустых полей, а также дублирование информации.
Проверяем находится ли наше отношение в НФБК ? Да находится, так как все детерминанты являются возможными ключами.
Возможные ключи: |
НП, НК, <НП, НК> |
Детерминанты: |
НП, НК, <НП, НК> |
Если связь бинарна, степени 1:1 и класс принадлежности обеих сущностей является обязательным, то требуется только одно отношение. В это отношение включаются все атрибуты обеих сущностей. Ключом данного отношения может быть ключ любой из двух сущностей.
Рассмотрим ситуацию, когда класс принадлежности одной из сущностей является необязательным:
|
|
Рис. 7.25 ER-диаграмма для бинарной связи ‘Преподаватель читает Курс’ степени 1:1 и Класс принадлежности Преподаватель – обязательным, а Курс не обязательным |
Таблица 7.2 R универсальное отношение. |
|||||
НП |
Фам. |
Тел. |
НК |
V |
Если использовать единственное отношение, в нем могут появляться кортежи с пустыми полями (в том случае, если в реальной ситуации возникают курсы никем не читаемые). Это недопустимо. |
П1 |
Иванов |
32-22-11 |
К2 |
36 | |
П2 |
Минин |
33-98-76 |
К4 |
54 | |
П3 |
Орлов |
34-87-98 |
К1 |
18 | |
- |
- |
- |
К3 |
48 |
Попытаемся использовать для хранения информации два отношения. Первое отношение будет хранить информацию о сущности ПРЕПОДАВАТЕЛЬ, второе отношение будет хранить информацию о сущности КУРС. При этом к отношению ПРЕПОДАВАТЕЛЬ необходимо добавить еще одно поле, где будет храниться значение ключа сущности КУРС, т.е. номер курса читаемого данным преподавателем. Если мы попробуем добавить поле НП к таблице КУРС, то потерпим не удачу, так как пустые строчки не исчезнут. Данные отношения находятся в НФБК.
Преподаватель (НП, Фам, Тел., НК)
Курс (НК,V)
Таблица 7.3 R1 отношение “Преподаватель_НК”. |
Таблица 7.4 R2 отношение “Курс”. | ||||||
НП |
Фам. |
Тел. |
НК |
НК |
V | ||
П1 |
Иванов |
32-22-11 |
К2 |
K1 |
18 | ||
П2 |
Минин |
33-98-76 |
К4 |
K2 |
36 | ||
П3 |
Орлов |
34-87-98 |
К1 |
K3 |
48 | ||
K4 |
54 |
Если связь бинарна, степени 1:1 и класс принадлежности одной сущности является обязательным, а другой необязательным, информацию необходимо хранить в двух отношениях. Под каждую сущность необходимо выделить одно отношение. Кроме того, к отношению, порожденному сущностью, класс принадлежности которой является обязательным, необходимо добавить один атрибут – являющийся ключом сущности, класс принадлежности которой является необязательным.При этом ключом каждого отношения будет ключ соответствующей сущности.
Рассмотрим ситуацию, когда классы принадлежности обеих сущностей являются необязательными:
|
|
Рис. 7.26 ER-диаграмма для бинарной связи ‘Преподаватель читает Курс’ степени 1:1 и классом принадлежности обеих |
Таблица 7.5 R универсальное отношение. |
Пустые поля возникают по двум причинам – из-за наличия курсов, никем не читаемых и из-за наличия ничего не читающих преподавателей. Отношение будет содержать аномалии Невозможно использование одного или двух отношений: | ||||
НП |
Фам. |
Тел. |
НК |
V | |
П1 |
Иванов |
32-22-11 |
К2 |
36 | |
П2 |
Минин |
33-98-76 |
- |
- | |
П3 |
Орлов |
34-87-98 |
К4 |
54 | |
П4 |
Петров |
35-78-00 |
К1 |
18 | |
- |
- |
- |
К3 |
48 |
Таблица 7.6 R1 отношение “Преподаватель_НК”. |
Таблица 7.7 R2 отношение “Курс_НП”. | |||||||||
НП |
Фам. |
Тел. |
НК |
НК |
V |
НП | ||||
П1 |
Иванов |
32-22-11 |
К3 |
К1 |
18 |
П4 | ||||
П2 |
Минин |
33-98-76 |
- |
К2 |
24 |
- | ||||
П3 |
Орлов |
34-87-98 |
К4 |
К3 |
36 |
П1 | ||||
П4 |
Петров |
35-78-00 |
К1 |
К4 |
54 |
П3 |