Отношение находится в нормальной форме Бойса-Кодда, если оно находится в третьей нормальной форме и каждый детерминант отношения является возможным ключом этого отношения.
Определение: Если в отношении существует несколько функциональных зависимостей, то каждый атрибут или набор атрибутов, от которого зависит другой атрибут, называется детерминантомотношения.
Иными словами, отношение находится в BCNF, если любая функциональная зависимость между его атрибутами сводится к полной функциональной зависимости от возможного ключа.
Пример отношения, которое находится в 3NF, но НЕ находится в BCNF: таблица результатов приемных экзаменов:
Дано отношение: R( идентификатор, номер паспорта, предмет, оценка ).
Ответ на вопрос: зачем? Например, один абитуриент потерял свою карточку и ему выдали другую с другим номером. Второй абитуриент – гениальный ребенок, и у него пока нет паспорта.
Имеются следующие функциональные зависимости:
1. Идентификатор, предмет ® оценка;
2. Номер паспорта, предмет ® оценка; (зависимость полная)
3. Идентификатор ® номер паспорта; (зависимым не является непервичный атрибут)
4. Номер паспорта ® идентификатор.
Транзитивных зависимостей нет, так как зависимость 3 имеет обратную 4. Таким образом, отношение находится в 3NF. Но функциональные зависимости между атрибутами идентификатор и номер паспорта не являются зависимостями от возможного ключа этого отношения.
Для приведения отношения в BCNF возможна декомпозиция следующего вида:
- R1 ( идентификатор, предмет, оценка).
- R2 ( идентификатор, номер паспорта).
Ответ на вопрос: зачем? Например, один абитуриент потерял свою карточку и ему выдали другую с другим номером. Второй абитуриент – гениальный ребенок, и у него пока нет паспорта.
В большинстве случаев достижение третьей нормальной формы или даже формы Бойса-Кодда считается достаточным для реальных проектов баз данных, однако в теории нормализации существуют и другие нормальные формы:
NF.
Отношение находится в четвёртой нормальной форме в том и только в том случае, если существует многозначная зависимость А –>> B и все остальные атрибуты R функционально зависят от А.
Определение: В отношении R(A,B,C) существует многозначная зависимость R.A –>> R.B в том и только в том случае, если множество значений В, соответствующее паре значений атрибутов А и С, зависит только от А и не зависит от С.
Иными словами, отношение находится в четвёртой нормальной форме, если оно находится в BCNF, и все его многозначные зависимости являются функциональными зависимостями от потенциальных ключей.
Пример (1) отношения, которое НЕ находится в 4NF: список дисциплин, которые предстоит прослушать студенту первого курса:
Дано отношение: R( номер зачетки, группа, дисциплина ).
Перечень дисциплин, которые должен слушать студент на первом курсе, определяется исключительно номером группы, а не номером зачетки. То есть, в данном отношении существуют две многозначные зависимости:
- группа –>> дисциплина.
- группа –>> номер зачетки.
Это означает, что каждой группе однозначно соответствует перечень дисциплин по учебному плану, и номер группы определяет список студентов, которые в этой группе учатся.
При этом возможны следующие аномалии:
- Мы не можем хранить информацию о новой группе и перечне её дисциплин до тех пор, пока в неё не будут зачислены студенты.
- Если в группу добавляется новый студент, то необходимо сгенерировать для него весь перечень дисциплин для данной группы.
Для приведения отношения в 4NF возможна декомпозиция следующего вида:
- R1 ( номер зачетки, группа).
- R2 (группа, дисциплина ).
Пример (2): меню:
Исходное отношение: R( блюдо, повар, рецепт ). Повар умеет готовить разные блюда, одинаково названные блюда могут отличаться рецептом приготовления.
Декомпозиция:
- R1 ( повар, блюдо).
- R2 (блюдо, рецепт).
5NF (PJ/NF).
Отношение R находится в пятой нормальной форме (нормальной форме проекции-соединения) в том и только в том случае, когда любая зависимость соединения в R следует из существования некоторого возможного ключа в R.
Определение: Отношение R (A, B, … Z) удовлетворяет зависимости соединения (А, B, … Z) в том и только в том случае, когда R восстанавливается без потерь путём соединения своих проекций на A, B, … Z (наборы атрибутов отношения R). Полной декомпозицией отношения называют такую совокупность произвольного числа его проекций, соединение которых полностью совпадает с содержимым исходного отношения.
Иными словами, отношение находится в пятой нормальной форме тогда и только тогда, когда в каждой его полной декомпозиции все проекции содержат возможный ключ.
Пример отношения, которое находится в 4NF, но НЕ находится в 5NF: почасовики.
Дано отношение: R( преподаватель, кафедра, дисциплина). Считается, что приглашённый преподаватель может работать на нескольких кафедрах и вести различные дисциплины. В этом случае ключом отношения является полный набор из трёх атрибутов. В отношении отсутствуют многозначные зависимости, и поэтому оно находится в 4NF. Однако в нём нет наборов атрибутов, которые составляют возможные ключи отношения, и потому это отношение не в PJ/NF. При этом провести полную декомпозицию на два отношения нельзя.
Возможна декомпозиция следующего вида:
- R1 ( преподаватель, кафедра).
- R2 (преподаватель, дисциплина ).
- R3 (кафедра, дисциплина).
Отношение, не имеющее ни одной полной декомпозиции, также находится в пятой нормальной форме.
Дата добавления: 2015-07-30; просмотров: 958;