- •Теория нормализации.
- •Ненормализованная
- •Приведение к I Нормальной форме
- •Алгоритм приведения отношения к I НФ:
- •2. Атрибуты исходного отношения, не входящие в повторяющуюся группу, образуют отдельное отношение, ключом
- •Приведение отношения ко II-й нормальной форме.
- •Поставка (Шифр изделия*, Шифр поставщика*, Наименование изделия, Сведения о поставщике, Цена, Количество)
- •Нарушение условий II НФ приводит к ряду неудобств:
- •Алгоритм приведения отношений ко II НФ (с наименьшим количеством проекций):
- •2.Выписать все неполные функциональные зависимости от частей ключа
- •3.Сгруппировать полученные зависимости, таким образом, чтобы в одной группе содержались все функциональные зависимости
- •4.Каждой группе поставить в соответствие одну проекцию исходного отношения.
- •Деятельность программиста (Номер программиста*, Номер программы*, Имя программиста, Имя программы, Количество рабочих часов)
- •Полная функциональная зависимость
- •Отношения во II НФ:
- •Примечание: Если ключ отношения содержит один элемент, то есть не является сцепленным, то
- •Приведение отношения ко III НФ.
- •Устранение транзитивной зависимости состоит в расщеплении исходного отношения на два.
- •Студент (Номер зачётной книжки*, Имя студента, Стипендия, Номер курсового проекта, Дата сдачи)
- •Недостатки отношения Студент:
- •Отношение R задано в III нормальной форме, если оно задано во II НФ,
- •Алгоритм приведения отношений к III НФ.
Теория нормализации.
Теория нормализации основана на том утверждении, что определённый набор отношений обладает лучшими свойствами при включении, модификации и удалении данных, чем все остальные наборы отношений, с помощью которых могут быть представлены те же данные.
Цели процесса нормализации:
•Исключение некоторых типов избыточности;
•устранение некоторых аномалий обновления;
•проектирование структуры БД;
•упрощение процесса наложения ограничений целостности.
Ненормализованная
форма
I нормальная форма
II нормальная форма
III нормальная форма
Нормальная форма Бойса-Кодда
IV нормальная форма
ЭТАПЫ НОРМАЛИЗАЦИИ
Устранение повторяющихся групп
Устранение неполных функциональных зависимостей атрибутов от первичных ключей
Устранение транзитивной зависимости
Устранение неполных функциональных зависимостей от возможных ключей
Устранение сложных связей
Устранение зависимости соединения
V нормальная форма
Приведение к I Нормальной форме
Повторяющаяся группа – это совокупность атрибутов отношения, значение которых повторяются в одном кортеже несколько раз( при одном и том же значении ключа)
Служащий(Номер служащего*, Ф.И.О, Должность, Код работы, Срок окончания)
Служащий
№ служащего* |
Ф.И.О |
Должность |
Код работы |
Срок окончания |
10 |
Иванов |
Программист |
Р.1 |
5.10.03 |
|
|
|
Р.2 |
10.11.03 |
|
|
|
Р.3 |
20.12.03 |
20 |
Петров |
Экономист |
P.2 |
10.11.03 |
Повторяющаяся группа
Алгоритм приведения отношения к I НФ:
1. Из исходного отношения выделяются в отдельное отношение все повторяющиеся группы вместе с ключом исходного отношения. Ключ повторяющейся группы вместе с ключом исходного отношения образуют сцепленный
ключ.
График (№служащего*, Код работы*, Срок окончания)
График
№ служащего* |
Код работы* |
Срок окончания |
10 |
Р.1 |
5.10.03 |
10 |
Р.2 |
10.11.03 |
10 |
Р.3 |
20.12.03 |
20 |
Р.2 |
10.11.03 |
2. Атрибуты исходного отношения, не входящие в повторяющуюся группу, образуют отдельное отношение, ключом которого является ключ исходного отношения.
Служащие(Номер служащего*, Ф.И.О, Должность)
Служащие
№ служащего* |
Ф.И.О |
Должность |
10 |
Иванов |
Программист |
20 |
Петров |
Экономист |
Приведение отношения ко II-й нормальной форме.
Отношение R-задано во II НФ, если оно является отношением в I НФ, и каждый атрибут, не являющийся ключевым элементом этого отношения, полностью зависит от первичного ключа этого отношения R.
Поставка (Шифр изделия*, Шифр поставщика*, Наименование изделия, Сведения о поставщике, Цена, Количество)
Шифр изделия
Шифр поставщ
Наименование
изделия
Сведения о поставщике
*
*
Цена
Количество
Нарушение условий II НФ приводит к ряду неудобств:
1.Нельзя ввести никакие дополнительные сведения о поставщике до тех пор, пока он не поставит никаких изделий.
2.Если поставщик временно прекратил поставку некоторого изделия, то удаление записи, соответствующей данной поставке, приводит к удалению сведений о нём.
3.Трудно изменить дополнительные сведения о поставщике.
Эти трудности можно устранить, разделив это отношения на три отношения, заданные во второй нормальной форме.
Алгоритм приведения отношений ко II НФ (с наименьшим количеством проекций):
1.Выписать все полные функциональные зависимости атрибутов от ключа
Полные функциональные зависимости от ключа:
(Шифр поставщика*, Шифр изделия*) |
|
|
Цена |
|
|
|
|||
(Шифр поставщика*, Шифр изделия*) |
|
|||
Количество |
|
|
|
|
2.Выписать все неполные функциональные зависимости от частей ключа
Функциональные зависимости от частей ключа:ения.
Шифр изделия* |
|
Наименование |
изделия |
|
|
|
|
|
Шифр поставщика* |
|
Сведения о |
поставщике |
|
|
