Функциональная зависимость

advertisement
БАЗЫ ДАННЫХ
ЛЕКЦИЯ 8
тема: ТЕОРИЯ
НОРМАЛЬНЫХ ФОРМ
Функциональная зависимость
Функциональная зависимость (Functional
Dependency) – это особого рода ограничение
целостности, накладываемое на атрибуты сущности и
заключающееся в том, что значениям некоторой
группы атрибутов, называемой детерминантом, всегда
соответствуют единственные значения другой группы
атрибутов, называемых функционально зависимыми.
(a1, a2, …) -> (b1,b2,…)
Функциональная зависимость
• неполная функциональная зависимость от
идентификатора ─ детерминант является частью
идентификатора и сам функционально определяет
некоторые атрибуты
• транзитивная функциональная зависимость от
идентификатора ─ детерминант функционально
зависит от идентификатора и, в свою очередь, сам
функционально определяет некоторые атрибуты
Функциональная зависимость
Нормальные формы
Нормальные формы (Normal Forms) —
это сущности, удовлетворяющие
определенным условиям, гарантирующим
отсутствие определенных аномалий при
манипулировании данными.
Первая нормальная форма
Первая нормальная форма (1НФ) — это
«простая» идентифицируемая таблица:
• на пересечении каждой строки и столбца
находятся атомарные данные
• идентифицируемость — наличие
первичного ключа
Сложная таблица
«Сложность» по «вертикали» (по столбцам):
«Сложность» по «горизонтали» (по строкам):
Вторая нормальная форма
Вторая нормальная форма (2НФ) — это 1НФ,
в которой отсутствуют неполные
функциональные зависимости от первичного
ключа, что обеспечивает отсутствие
соответствующих аномалий.
Неполная функциональная
зависимость
det (Код) → ФИО
det (Код) → Назв
Третья нормальная форма
Третья нормальная форма (3НФ) — это 2НФ,
в которой отсутствуют транзитивные
функциональные зависимости от первичного
ключа, что обеспечивает отсутствие
соответствующих аномалий.
Транзитивная
функциональная зависимость
Нормальная форма
Бойса-Кодда
Нормальная форма Бойса–Кодда
(НФБК) — это 1НФ, в которой каждый
детерминант является идентификатором
Аномалии скрытых сущностей

Аномалия вставки

Аномалия удаления

Аномалия обновления
Аномалии скрытых сущностей
Устранение аномалий
Декомпозиция
исходной
сущности.
«Скрытые»
сущности (детерминант + зависящие от него атрибуты)
вычленяются в самостоятельную сущность.
Download