- •Проектирование баз данных. Лекция 1. Введение. Банки и базы данных. Архитектура субд.
- •Хранимая база данных (Внутренняя модель)
- •Понятие проектирования баз данных. Различные подходы к проектированию бд.
- •Различные подходы к проектированию данных.
- •Сетевая модель данных.
- •Лекция 2.
- •Реляционные операции над отношениями.
- •Лекция 3. Аномалии хранения данных.
- •Концептуальное проектирование данных. Нормализация. Понятие функциональной зависимости. Теорема Хита.
- •Функциональная зависимость.
- •Теорема Хита.
- •Лекция 4. Пятая нф. Универсальное отношение. I и II нф.
- •Первая нормальная форма.
- •Вторая нормальная форма.
- •Третья нормальная форма. Транзитивные зависимости.
- •Лекция 5. Нормальная форма Бойса-Кодда. Четвертая нормальная форма. «Перенормализованные» модели данных.
- •Четвертая нормальная форма.
- •«Перенормализованные» модели данных.
- •Пример проектирования бд.
- •Отношение “Аптека”
- •Отношение “Лекарство”
- •Отношение “Наличие лекарств”
- •Отношение “Поставщик”
- •Отношение “Лицензия поставщика”
- •Отношение “Запрос на поставку”
- •Лекция 6. Проектирование в терминах «Сущность – связь»
- •Сущности и связи.
- •Классификация связей
- •Предварительные отношения для бинарных связей степени 1:1.
- •Лекция 7. Предварительные отношения для степени связи 1:n и m:n.
- •Предварительные отношения для степени связи m:n.
- •Лекция 14. Предварительные отношения для связей высших порядков. Использование ролевых отношений.
- •Студент
- •Использование ролевых отношений.
- •Рабочий
- •Подчиненный
- •Лекция 8. Развитой пример применения e-r проектирования.
- •Сопоставление методик нормализации и e-r проектирования. Физическое проектирование.
- •Физическое проектирование.
- •Ограничения целостности.
- •Заключение.
Предварительные отношения для степени связи m:n.
Степень бинарной связи M:N означает, что каждая запись одного отношения может быть связана с несколькими записями другого отношения и наоборот. В проекции на рассматриваемый пример это соответствует предположению о том, что каждый преподаватель может вести несколько предметов, а каждый курс может читаться несколькими преподавателями. E-R диаграммы и экземпляры отношений для этого случая приведены на рис. 27.
Преподаватель
Курс
Таб. № |
ФИО |
|
|
|
Курс |
Колич. часов |
|
Иванов |
|
|
|
Математика |
120 |
|
Петров |
|
|
|
Физика |
80 |
|
Сидоров |
|
|
|
Философия |
150 |
245 |
Кузнецов |
|
|
|
Сопромат |
90 |
|
|
|
|
|
Механика |
120 |
|
|
|
|
|
Информатика |
150 |
Рис. 27. Отношения, связанные степенью связи M:N с необязательным классом принадлежности многосвязной сущности.
Если в данном случае провести анализ вариантов декомпозиции, то становится очевидным, что единственно возможным вариантом представления этого набора данных в реляционной форме является представление его в виде трех таблиц.
Если степень бинарной связи равна M:N, то независимо от класса принадлежности обеих сущностей необходимо формирование трех отношений. По одному отношению формируется для каждой сущности, при этом ключ сущности является первичным ключом отношения. Еще одно отношение формируется для связи; ключом отношения связи является комбинация ключей сущностей.
Экземпляры полученных отношений показаны на рис 28.
Преподаватель Читает Курс
Таб. № |
ФИО |
|
Курс |
Таб. № |
|
Курс |
Колич. часов |
101 |
Иванов |
|
Математика |
101 |
|
Математика |
120 |
120 |
Сидоров |
|
Физика |
101 |
|
Физика |
80 |
203 |
Кузнецов |
|
Информатика |
101 |
|
Философия |
150 |
245 |
Петров |
|
Сопромат |
120 |
|
Сопромат |
90 |
|
|
|
Механика |
120 |
|
Механика |
120 |
|
|
|
Физика |
120 |
|
Информатика |
150 |
Рис. 28. Пример экземпляров отношений для случая связи степени M:N.
Рассмотрим отношение «Читает», которое реализует связь между сущностями. Ключом его является сочетание полей «Курс» и «Таб. №». Как и в предыдущих случаях, весьма существенными для реализации связи являются ограничения, накладываемые на ключ этого отношения.
Сочетание значений атрибутов «Курс» и «Таб. №» должно быть уникальным для данного отношения. Это требование следует из того, что эти поля образуют первичный ключ отношения.
Каждое значение поля «Курс» должно принадлежать домену атрибута «Курс» отношения «Курс». В противном случае это значение будет указывать на несуществующий курс, что недопустимо.
Каждое значение поля «Таб. №» должно принадлежать множеству значений атрибута «Таб. №» отношения «Преподаватель» из тех же соображений, по которым значение поля «Курс» должно принадлежать домену атрибута «Курс» отношения «Курс».
Если сравнить эти требования с тем, что было сформулировано для случая связи 1:1 с необязательным для обеих сущностей классом принадлежности, то можно увидеть, что снято требование на уникальность полей «Таб. №» и «Курс».

101
120
203