- •Реляционные базы данных
- •Цели проектирования баз данных
- •Универсальные отношения
- •Проблемы, связанные с использованием единственного отношения
- •Проблема вставки.
- •Проблема обновления.
- •Проблема удаления.
- •Функциональные зависимости
- •Нормальные формы отношений Первая нормальная форма
- •Вторая нормальная форма
- •Третья нормальная форма
- •Третья усиленная форма или нормальная форма Бойса–Кодда (нфбк)
- •Декомпозиция отношений
- •Избыточные функциональные зависимости. Правила вывода
- •Правило 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
- •Пример проектирования с использованием ролей
Правило 5.
Для бинарной связи степени 1:N, N:1 с необязательным классом принадлежности n-связной сущности, то (независимо от класса принадлежности односвязной сущности) необходимо формирование трех отношений. Первое включает все атрибуты,
характеризующую первую сущность, ключ – ключ сущности. Второе включает все атрибуты, третьей сущности, ключ – ключ сущности. Третье отношение включает информацию о связи - помещенные атрибуты – ключи связи сущностей (возможны другие атрибуты); ключ отношения - ключ n–связной сущности.
Бинарные связи степени m:n.
Каждый преподаватель может читать несколько курсов, каждый курс может быть читаем несколькими преподавателями:
|
Рис. 7.38 |
|
Рис. 7.39 |
Составим универсальное отношение:
Таблица 7.21 R-универсальное отношение. |
|||||
НП |
Фам |
Тел |
НК |
V |
|
П1 |
Иванов |
32 |
К4 |
13 |
|
П2 |
Зайцев |
34 |
- |
-12 |
|
П3 |
Петров |
37 |
К1 |
34 |
|
П3 |
Петров |
37 |
К2 |
23 |
|
П3 |
Петров |
37 |
К3 |
55 |
|
П4 |
Сидоров |
48 |
К4 |
44 |
|
П5 |
Пирогов |
45 |
К2 |
56 |
|
П5 |
Пирогов |
45 |
К4 |
54 |
|
- |
Кривов |
27 |
К5 |
18 |
|
Отношение имеет пустые поля и избыточное дублирование. Попытаемся разделить информацию на два отношения:
Таким образом, хранить информацию в двух отношениях невозможно. Попробуем составить три отношения.
Таблица 7.22 R1-отношение |
Таблица 7.23 R2–отношение |
Таблица 7.24 R3-отношение |
||||||||
“Преподаватель”. |
“Читает”. |
“Курс”. |
||||||||
НП |
ФАМ |
ТЕЛ |
|
НП |
НК |
|
НК |
V |
|
|
П1 |
Иванов |
32 22 32 |
|
П1 |
К1 |
|
К1 |
23 |
|
|
П2 |
Минин |
43 56 55 |
|
П3 |
К3 |
|
К2 |
23 |
|
|
П3 |
Федоров |
45 67 55 |
|
П3 |
К4 |
|
К3 |
23 |
|
|
П4 |
Петров |
32 12 11 |
|
П3 |
К3 |
|
К4 |
12 |
|
|
П5 |
Орлов |
78 00 45 |
|
П4 |
К2 |
|
К5 |
11 |
|
|
|
|
|
|
П5 |
К5 |
|
|
|
|
|
|
|
|
|
П5 |
К2 |
|
|
|
|
В данных таблицах ключами являются :
Преподаватель –ключ НП, Курс- ключ НК, Читает- ключ НП и НК.
Преподаватель (НП, ФАМ, ТЕЛ)
Курс (НК, V)
Читает (НП, НК)
При использовании одного отношения будут отсутствовать пустые места в столбцах
В случаях:
А. НК, V
Б. НП,ФАМ,ТЕЛ
В. во всех столбцах.
A. |
|
Рис. 7.40 |
Б. |
|
Рис. 7.41 |
В. |
|
Рис. 7.42 |
Но дублирование информации останется как в столбцах НП, ФАМ, ТЕЛ так и в столбцах НК, V, т.е. двух отношений будет недостаточно, следовательно необходимо три отношения.