- •4.2. Основные понятия рбд (отношение, сущность, атрибут, связь, ключ, домен, примеры)
- •4.3. Нормализация отношений (1, 2, 3 нф; нфбк; фз; потенциальный ключ; детерминант; пример)
- •4.4. Целостность реляционных данных. Преимущества и недостатки рмд
- •4.5. Реляционные операции. Операции над отношениями
- •Контрольные вопросы
- •4.6. Постановка задачи проектирования рбд с использованием метода «сущность-связь» (сущность, связь, атрибут, er-диаграмма)
- •4.7. Построение er-диаграммы предметной области (er-диаграммы экземпляров и классов; пример)
- •4.8. Бинарных связи и классы принадлежности. Случай 1 – связь 1:1, кп обеих сущностей обязательный
- •4.9. Примеры er-диаграмм (связь 1:1): случай 2 – кп сущностей обязательный и необязательный; случай 3 – кп обеих сущностей необязательный
- •4.10. Примеры er-диаграмм: случай 4 – связь 1:n, кп сущностей необязательный; случай 5 – связь n:1, кп сущностей обязательный; случай 6 – связь m:n, кп сущностей необязательный
- •Контрольные вопросы
- •4.11. Получение предварительных отношений из er-диаграмм для бинарных связей 1:1 (шаги использования метода; правило 1 – кп сущностей обязательный)
- •4.12. Получение предварительных отношений из er-диаграмм для бинарных связей 1:1 (правило 2 – кп сущностей обязательный и необязательный; правило 3 – кп обеих сущностей необязательный)
- •4.13. Пример проекта бд «Проводники и озера» (бинарная связь 1:1; кп сущностей обязательный и необязательный; er-диаграммы для экземпляров и классов; диаграмма фз; анализ на нфбк)
- •Контрольные вопросы
- •4.14. Получение предварительных отношений из er-диаграмм для бинарных связей 1:n (правило 4 – кп n-связной сущности обязательный; правило 5 – кп n-связной сущности необязательный)
- •Отношение «Читает»
- •Контрольные вопросы
- •4.15. Получение предварительных отношений из er-диаграмм для
- •4.16. Пример проектирования бд с тройственной связью («Проводник обслуживает Озеро, в нем водится Рыба»; постановка задачи; атрибуты; er-диаграммы; диаграммы фз; отношения)
- •Контрольные вопросы
4.7. Построение er-диаграммы предметной области (er-диаграммы экземпляров и классов; пример)
Рассмотрим построение ER-диаграммы, описывающей структуру предметной области (ПО). В ER-диаграмме для отображения сущностей используются прямоугольники, а для отображения связей - ромбы. Различают ER-диаграммы для экземпляров сущностей и ER-диаграммы для классов сущностей. Ниже приведены ER-диаграммы обоих типов для БД Преподаватель читает дисциплину (рис. 4.3 и 4.4).
Рис. 4.3. ER -диаграмма для экземпляров сущностей и связей
Здесь П1, П2, П3, П4 различные преподаватели, а Базы данных, Основы программирования, Информатика, Математика – названия дисциплин.
Рис. 4.4. ER -диаграмма классов
КП (код преподавателя), КД (код дисциплины) - атрибуты, являющиеся первичными ключами соответственно сущностей Преподаватель и Дисциплина. Для каждого экземпляра сущности Преподаватель и Дисциплина коды различны. Ключ связи - составной из двух атрибутов <КП, КД>.
На первом этапе необходимы только атрибуты, являющиеся ключами сущностей. Другие атрибуты вместе с определенными над ними функциональными зависимостями (ФЗ) добавляются в отношения на более поздних этапах.
Чаще всего встречаются бинарные связи, т. е. связи между двумя сущностями, но могут быть и связи более высокого порядка, когда по смыслу неразрывно соединены несколько сущностей. Связь «Преподаватель читает дисциплину» является бинарной, она связывает только две сущности, а связь «Преподаватель читает дисциплину для специальности» является тройственной, она связывает три сущности, и т. д. Сначала рассмотрим наиболее простые и распространенные бинарные связи.
4.8. Бинарных связи и классы принадлежности. Случай 1 – связь 1:1, кп обеих сущностей обязательный
Связь между сущностями имеет две характеристики: степень связи и класс принадлежности сущности к связи. Значения этих характеристик могут быть определены из анализа связей между экземплярами сущностей. Степень связи показывает, сколько экземпляров одной сущности могут быть связаны с каждым экземпляром другой сущности. Степень связи оценивается с каждой из сторон. Степень связи может иметь одно из трех значений:
- один к одному (1:1);
- один ко многим (1:М или М: 1);
- многие ко многим (M:N).
Связь 1:1 означает, что каждый экземпляр первой сущности может быть связан только с одним экземпляром второй сущности и наоборот.
Связь 1:М означает, что каждый экземпляр первой сущности может быть связан с несколькими экземплярами второй сущности, а каждый экземпляр второй сущности может быть связан только с одним экземпляром первой сущности.
Связь M:N означает, что каждый экземпляр первой сущности может быть связан с несколькими экземплярами второй сущности и наоборот.
Класс принадлежности (КП) сущности к связи может быть обязательным и необязательным. При обязательном классе принадлежности каждый экземпляр сущности обязательно должен быть связан с другой сущностью. При необязательном классе принадлежности не требуется, чтобы каждый экземпляр сущности был связан с каким-либо экземпляром другой сущности. Другими словами, в БД хранится информация обо всех экземплярах сущностей, но только некоторые из них связаны с экземплярами другой сущности.
Для отображения характеристик связи на диаграмме может использоваться, например, символ «точка». Если точка внутри прямоугольника, то соответствующая прямоугольнику сущность имеет обязательный класс принадлежности. Если вне прямоугольника, то необязательный класс принадлежности. Цифры или буквы рядом с точками указывают на степень связи. Сочетание трех типов связей с двумя классами принадлежности дают возможность описания множества различных вариантов связей в предметной области. Чтобы лучше усвоить введенные понятия, рассмотрим на примерах некоторые случаи и для них построим ER -диаграммы.
Существуют различные правила взаимоотношений между сущностями Преподаватель и Дисциплина, принятые в различных учебных заведениях.
Случай 1. Каждый преподаватель может читать только одну Дисциплину, каждая Дисциплина читается не более чем одним Преподавателем. Степень связи 1:1, класс принадлежности обеих сущностей обязательный (рис. 4.5).
Рис. 4.5. Отношение сущностей и ER -диаграммы для случая 1
Здесь Д1, Д2, ДЗ, Д4 - названия дисциплин. КП, КД - ключи сущностей соответственно Преподаватель и Дисциплина.