- •Реляционные базы данных
- •Цели проектирования баз данных
- •Универсальные отношения
- •Проблемы, связанные с использованием единственного отношения
- •Проблема вставки.
- •Проблема обновления.
- •Проблема удаления.
- •Функциональные зависимости
- •Нормальные формы отношений Первая нормальная форма
- •Вторая нормальная форма
- •Третья нормальная форма
- •Третья усиленная форма или нормальная форма Бойса–Кодда (нфбк)
- •Декомпозиция отношений
- •Избыточные функциональные зависимости. Правила вывода
- •Правило 1. Транзитивные зависимости
- •Пример удаления избыточных зависимостей с помощью правил вывода
- •Общая схема проектирования баз данных методом декомпозиции
- •Построение отношений для базы данных “Начальник отдела”.
- •Выявление функциональных зависимостей
- •Декомпозиция универсального отношения
- •Семантическое моделирование или проектирования баз данных методом “Сущность-связь”
- •Сущности и связи
- •Диаграмма еr–экземпляров:
- •Диаграмма er–типа:
- •Терминология метода “Сущность-связь”
- •Степень связи
- •Класс принадлежности сущности
- •Примеры диаграмм er-типа связей степени 1:1.
- •Примеры диаграмм er-типа связей степени 1:n и n:1
- •Примеры диаграмм er-типа связей степени m:n
- •Порядок или мерность связи
- •Бинарные связи со степенью связи 1: 1
- •Правило 1.
- •Правило 2.
- •Правило 3.
- •Бинарные связи со степенью связи 1: n
- •Правило 4.
- •Правило 5.
- •Бинарные связи степени m:n.
- •Правило 6.
- •Пример проектирования с использованием связей степенью м:n
- •Связи более высокого порядка
- •Правило 7
- •Пример проектирования с использованием связей более высокого порядка
- •Использование ролей
- •Правило 8
- •Пример проектирования с использованием ролей
Примеры диаграмм er-типа связей степени m:n
Каждый преподаватель может читать несколько курсов, каждый курс может читаться несколькими преподавателями. Степень связи M:N:
|
|
|
Рис. 7.20 Диаграмма ER-типа связи степени M:N |
необяз. |
необяз. |
|
|
|
Рис. 7.21 Диаграмма ER-типа связи степени M:N |
обяз. |
необяз. |
|
|
|
Рис. 7.22 Диаграмма ER-типа связи степени M:N |
необяз. |
обяз. |
|
|
|
Рис. 7.23 Диаграмма ER-типа связи степени M:N |
обяз. |
обяз. |
Порядок или мерность связи
Связь ЧИТАЕТ, существующая между сущностями ПРЕПОДАВАТЕЛЬ и КУРС называется бинарной, поскольку она связывает две сущности. Существующие звязи между тремя или более сущностями мы будем называть связями более высокого порядка..
Схема проектирования баз данных методом “сущность-связь”
Проектирование базы данных с помощью метода “сущность-связь” можно разбить на несколько шагов:
Шаг 1. Построение диаграммы ER–типа, включающей все сущности и все связи, обнаруженные в результате анализа инфологической модели предметной области.
Шаг 2. Построение набора предварительных отношений и указание предполагаемого ключа для каждого отношения.
Шаг 3. Подготовка списка всех атрибутов и распределение этих атрибутов по полученным отношениям. Необходимо определить для каждого отношения функциональные зависимости и проверить, находятся ли эти отношения в НФБК. Если хотя бы одно отношение не находится в НФБК или некоторые атрибуты не могут логично включиться ни в одно отношение, необходимо пересмотреть диаграммы ER–типа.
Бинарные связи со степенью связи 1: 1
Пробуем составлять предварительные отношения путем перебора всех возможных вариантов.
Рассмотрим ситуацию: Бинарная связь степень 1:1, и класс принадлежности обеих сущностей является обязательным.
|
|
Рис. 7.24 ER-диаграмма для бинарной связи ‘Преподаватель читает Курс’ степени 1:1 и классом принадлежности обеих сущностей обязательным |
Таблица 7.1 R Универсальное отношение |
|
|||||
НП |
Фам. |
Тел. |
НК |
V |
В этом отношении сущность ПРЕПОДАВАТЕЛЬ дополнена двумя атрибутами – фамилия преподавателя, телефон преподавателя. Сущность КУРС дополнена атрибутом V – объем в часах. |
|
П1 |
Иванов |
33-22-11 |
К3 |
24 |
||
П2 |
Минин |
56-98-76 |
К1 |
36 |
||
П3 |
Орлов |
53-87-98 |
К4 |
18 |
||
П4 |
Петров |
52-78-00 |
К2 |
54 |
В этом случае помещение всех атрибутов в одно отношение является правильным решением. Т.к. степень связи 1:1 и класс принадлежности является обязательным для обеих сущностей, гарантируется отсутствие пустых полей, а также дублирование информации.
Проверяем находится ли наше отношение в НФБК:
Возможные ключи: |
НП, НК |
Детерминанты: |
НП, НК |
Да находится, так как все детерминанты являются возможными ключами.