Требования четвертой нормальной формы - 4NF
Четвертая нормальная форма касается отношений, в которых имеются повторяющиеся наборы данных. На практике нарушения 4NF часто происходят в таблицах-связках, которые связывают более двух сущностей. В этом случае используют декомпозицию, основанную на многозначных зависимостях.
Многозначная зависимость является обобщением функциональной зависимости.
В качестве примера рассмотрим отношение:
Расписание_занятий (день_недели, номер_пары, код_группы, предмет, преподаватель, аудитория),
хранящее сведения о расписании занятий студенческих групп за неделю (для упрощения считаем, что нет разбиения на подгруппы и объединения в потоки).
В данном отношении можно выделить несколько альтернативных составных ключей:
(день_недели, номер_пары, код_группы),
(день_недели, номер_пары, преподаватель),
(день_недели, номер_пары, аудитория).
Некоторые атрибуты этого отношения трудно назвать абсолютно независимыми. Однако при условии, что каждый преподаватель может вести несколько предметов, а каждый предмет может вести несколько преподавателей, между этими атрибутами отсутствует ФЗ, соответствующая определению, приведенному в начале лекции. Если предположить, что аудитория явно не определяется ни предметом, ни группой, ни преподавателем, никаких нежелательных ФЗ в отношении выделить нельзя, поэтому оно удовлетворяет требованиям не только 3NF, но и NFBC.
Связь между атрибутами предмет и преподаватель можно определить как «многие ко многим». Между ними существует многозначная зависимость, которая обозначается так:
предмет ->> преподаватель
Аналогичная многозначная зависимость существует между атрибутами предмет и группа, поскольку каждая студенческая группа имеет определенный учебный план и изучает определенное заранее множество предметов.
Наличие многозначных зависимостей привносит в отношение значительную избыточность и приводит к возникновению проблем с обновлением данных. Например, если какой-то преподаватель уволился и его место занял другой, то придется обновить все кортежи расписания, в которых присутствует данный преподаватель. Кроме того, имеется опасность внести в расписание предмет, который не входит в учебный план группы или преподавателя, который не ведет данный предмет.
Определение четвертой нормальной формы:
Отношение находится в 4NF, если оно находится в BCNF и в нем отстутсвуют многозначные зависимости.
В приведенном примере не так-то просто избавиться от многозначных зависимостей. Можно предложить такой вариант:
Выносим в отдельные отношения зависимости предмет и преподаватель и предмет и группа. Естественное соединение этих отношений даст допустимые сочетания (предмет, преподаватель, группа).
Тогда схема отношения Расписание будет иметь вид:
Расписание (день_недели, номер_пары, аудитория, код допустимого сочетания предмет_ преподаватель_ группа )
Дата добавления: 2015-08-26; просмотров: 878;