Многозначные зависимости и четвертая нормальная форма
Версия от 17:06, 8 декабря 2021; 95.55.29.108 (обсуждение) (Новая страница: «== Аномалии в НФБК == Рассмотрим следующий пример: {| class="wikitable" ! Course !! Lecturer !! Book |- | СУБД || Ко…»)
Содержание
Аномалии в НФБК
Рассмотрим следующий пример:
Course | Lecturer | Book |
---|---|---|
СУБД | Корнеев Г. А. | Дейт |
СУБД | Корнеев Г. А. | Ульман |
Мат.Ан. | Кохась К. П. | Фихтенгольц |
Мат.Ан. | Виноградов О. Л. | Фихтенгольц |
Здесь присутствуют только тривиальные функциональные зависимости, поэтому отношение находится в нормальной форме Бойса-Кодда.
При этом, если мы предполагаем, что набор литературы не зависит от преподавателя, то у нас будет все 3 вида аномалии:
- Вставки: невозможно указать литературу по курсу без преподавателя.
- Удаления: нельзя удалить преподавателя, не потеряв литературу по курсу.
- Изменения: если есть два преподавателя по одному и тому же курсу и один рекомендует книгу, а другой нет. При этом для курса должен быть конкретный набор книг.
Многозначная зависимость
Определение: |
| многозначно определяет в отношении
Утверждение: |
Любая функциональная зависимость является множественной зависимостью. |
Теорема Фейгина
Теорема: |
Обобщение теоремы Хита: |
Доказательство: |
|
Теорема о дополнении
Теорема: |
и |
Доказательство: |
Из по теореме Фейгина следуетВследствие коммутативности Применяя еще раз теорему Фейгина, получаем, что |
обозначается: множественно определяет и .
Следствие.
называется тривиальной множественной зависимостью.
Четвертая нормальная форма
Определение: |
Отношение находится в четвертой нормальной форме (4НФ) тогда и только тогда, когда
|
Достижимость
Теорема: |
Любое отношение можно декомпозировать на отношения, находящиеся в 4НФ |
Доказательство: |
|
Приведение к 4НФ
Пусть задано отношение:
Course | Lecturer | Book |
---|---|---|
СУБД | Корнеев Г. А. | Дейт |
СУБД | Корнеев Г. А. | Ульман |
Мат.Ан. | Кохась К. П. | Фихтенгольц |
Мат.Ан. | Виноградов О. Л. | Фихтенгольц |
В данном отношении есть множественная зависимость:
, поэтому декомпозируем его следующим образом:Course | Lecturer |
---|---|
СУБД | Корнеев Г. А. |
СУБД | Корнеев Г. А. |
Мат.Ан. | Кохась К. П. |
Мат.Ан. | Виноградов О. Л. |
Course | Book |
---|---|
СУБД | Дейт |
СУБД | Ульман |
Мат.Ан. | Фихтенгольц |
Мат.Ан. | Фихтенгольц |