Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Проектирование баз данных.doc
Скачиваний:
9
Добавлен:
01.07.2025
Размер:
1 Мб
Скачать
☆

Лекция 7. Предварительные отношения для степени связи 1:n и m:n.

Как было показано, для связи степени 1:1 форма предвари-тельных отношений зависит от класса принадлежности обеих сущностей. В случае 1:N связи определяющим фактором для генерации предварительных отношений является класс принадлежности n – связной сущности; класс принадлежности односвязной сущности не имеет значения.

В нашем примере степень связи 1:N будет соответствовать предположению, что каждый преподаватель может вести несколько курсов, но каждый курс по- прежнему читается лишь одним преподавателем. Обязательный класс принадлежности для сущности «Курс» означает, что за каждым курсом обязательно закреплен один преподаватель. Приведем E-R диаграмму и экземпляры отношений для этого случая.

Преподаватель

Курс

Таб. №

ФИО

Курс

Колич. часов

101

Иванов

Математика

120

120

Петров

Физика

80

203

Сидоров

Философия

150

245

Кузнецов

Сопромат

90

Механика

120

Информатика

150

Рис. 24. Отношения, связанные степенью связи 1:N с обязательным классом принадлежности многосвязной сущности.

Из рис. 24 видно, что передать подобную связь одним отношением и при этом избежать аномалий обработки данных невозможно. Однако реляционное представление из двух отношений в данном случае вполне работоспособно.

Если степень связи равна 1:N и класс принадлежности n – связной сущности является обязательным, то достаточно использовать два отношения, по одному на каждую сущность. Ключ каждой сущности должен стать первичным ключом отношения. Кроме того, первичный ключ односвязной сущности должен быть добавлен как атрибут в отношение, реализующее многосвязную сущность.

Приведем экземпляры отношений для данного примера.

Преподаватель Курс

Таб. №

ФИО

Курс

Колич. часов

Таб. №

101

Иванов

Математика

120

101

120

Сидоров

Физика

80

101

203

Кузнецов

Философия

150

203

245

Петров

Сопромат

90

245

Механика

120

245

Информатика

150

120

Теперь опять изменим начальные предположения. Пусть каждый преподаватель по - прежнему ведет несколько курсов, и каждый курс читается не более чем одним преподавателем. Предположим, что возможно существование курсов, за которыми не закреплен преподаватель. Приведем E-R диаграмму и экземпляры отношений для этого случая.

Преподаватель

Курс

Таб. №

ФИО

Курс

Колич. часов

101

Иванов

Математика

120

120

Сидоров

Физика

80

203

Петров

Философия

150

245

Кузнецов

Сопромат

90

Механика

120

Информатика

150

Рис. 25. Отношения, связанные степенью связи 1:N с необязательным классом принадлежности многосвязной сущности.

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

Преподаватель Курс

Таб. №

ФИО

Курс

Колич. часов

Таб. №

101

Иванов

Математика

120

101

120

Сидоров

Физика

80

101

203

Кузнецов

Философия

150

245

Петров

Сопромат

90

245

Механика

120

245

Информатика

150

В данном случае не обойтись без трех отдельных отношений, подобно ранее рассмотренному случаю связи 1:1 и необязательным с двух сторон классом принадлежности.

Если степень бинарной связи равна 1:N и класс принадлежности многосвязной сущности является обязательным, то необходимо формирование трех отношений. По одному отношению формируется для каждой сущности, при этом ключ сущности является первичным ключом отношения. Еще одно отношение формируется для связи; ключом отношения связи является комбинация ключей сущностей.

Пример экземпляров полученных отношений показан на рис. 26.

Преподаватель Читает Курс

Таб. №

ФИО

Курс

Таб. №

Курс

Колич. часов

101

Иванов

Математика

101

Математика

120

120

Сидоров

Сопромат

120

Физика

80

203

Кузнецов

Физика

101

Философия

150

245

Петров

Механика

120

Сопромат

90

Механика

120

Информатика

150

Рис. 26. Экземпляры отношений для схемы рис. 25.

Рассмотрим отношение «Читает», которое реализует связь между сущностями. Ключом его является сочетание полей «Курс» и «Таб. №». Здесь нельзя не оговорить ограничения, накладываемые на составные части этого ключа, так и на весь ключ. Сформулируем эти требования.

  • Сочетание значений атрибутов «Курс» и «Таб. №» должно быть уникальным для данного отношения. Это требование следует из того, что эти поля образуют первичный ключ отношения.

  • Каждое значение поля «Курс» должно принадлежать домену атрибута «Курс» отношения «Курс». В противном случае это значение будет указывать на несуществующий курс, что недопустимо.

  • Каждое значение поля «Курс» должно встречаться в этом отношении не более одного раза. Это требование отражает тот факт, что каждый преподаватель читает не более одного курса, другими словами – реализует степень связи.

  • Каждое значение поля «Таб. №» должно принадлежать множеству значений атрибута «Таб. №» отношения «Преподаватель» из тех же соображений, по которым значение поля «Курс» должно принадлежать домену атрибута «Курс» отношения «Курс».

Если сравнить эти требования с тем, что было сформулировано для случая связи 1:1 с необязательным для обеих сущностей классом принадлежности, то можно увидеть, что снято требование на уникальность поля «Таб. №». Это и отражает тот факт, что преподаватель может читать несколько курсов.