Отношение находится в нормальной форме Бойса-Кодда, если оно находится в третьей нормальной форме и каждый детерминант отношения является возможным ключом этого отношения.

 

Определение: Если в отношении существует несколько функциональных зависимостей, то каждый атрибут или набор атрибутов, от которого зависит другой атрибут, называется детерминантомотношения.

 

Иными словами, отношение находится в BCNF, если любая функциональная зависимость между его атрибутами сводится к полной функциональной зависимости от возможного ключа.

 

Пример отношения, которое находится в 3NF, но НЕ находится в BCNF: таблица результатов приемных экзаменов:

Дано отношение: R( идентификатор, номер паспорта, предмет, оценка ).

 

Ответ на вопрос: зачем? Например, один абитуриент потерял свою карточку и ему выдали другую с другим номером. Второй абитуриент – гениальный ребенок, и у него пока нет паспорта.

 

Имеются следующие функциональные зависимости:

1. Идентификатор, предмет ® оценка;

2. Номер паспорта, предмет ® оценка; (зависимость полная)

3. Идентификатор ® номер паспорта; (зависимым не является непервичный атрибут)

4. Номер паспорта ® идентификатор.

Транзитивных зависимостей нет, так как зависимость 3 имеет обратную 4. Таким образом, отношение находится в 3NF. Но функциональные зависимости между атрибутами идентификатор и номер паспорта не являются зависимостями от возможного ключа этого отношения.

 

Для приведения отношения в BCNF возможна декомпозиция следующего вида:

  1. R1 ( идентификатор, предмет, оценка).
  2. R2 ( идентификатор, номер паспорта).

 

Ответ на вопрос: зачем? Например, один абитуриент потерял свою карточку и ему выдали другую с другим номером. Второй абитуриент – гениальный ребенок, и у него пока нет паспорта.

 

В большинстве случаев достижение третьей нормальной формы или даже формы Бойса-Кодда считается достаточным для реальных проектов баз данных, однако в теории нормализации существуют и другие нормальные формы:

 

NF.

Отношение находится в четвёртой нормальной форме в том и только в том случае, если существует многозначная зависимость А­ –>> B и все остальные атрибуты R функционально зависят от А.

 

Определение: В отношении R(A,B,C) существует многозначная зависимость R.A –>> R.B в том и только в том случае, если множество значений В, соответствующее паре значений атрибутов А и С, зависит только от А и не зависит от С.

 

Иными словами, отношение находится в четвёртой нормальной форме, если оно находится в BCNF, и все его многозначные зависимости являются функциональными зависимостями от потенциальных ключей.

 

Пример (1) отношения, которое НЕ находится в 4NF: список дисциплин, которые предстоит прослушать студенту первого курса:

Дано отношение: R( номер зачетки, группа, дисциплина ).

Перечень дисциплин, которые должен слушать студент на первом курсе, определяется исключительно номером группы, а не номером зачетки. То есть, в данном отношении существуют две многозначные зависимости:

  1. группа –>> дисциплина.
  2. группа –>> номер зачетки.

Это означает, что каждой группе однозначно соответствует перечень дисциплин по учебному плану, и номер группы определяет список студентов, которые в этой группе учатся.

 

При этом возможны следующие аномалии:

- Мы не можем хранить информацию о новой группе и перечне её дисциплин до тех пор, пока в неё не будут зачислены студенты.

- Если в группу добавляется новый студент, то необходимо сгенерировать для него весь перечень дисциплин для данной группы.

 

Для приведения отношения в 4NF возможна декомпозиция следующего вида:

  1. R1 ( номер зачетки, группа).
  2. R2 (группа, дисциплина ).

 

Пример (2): меню:

Исходное отношение: R( блюдо, повар, рецепт ). Повар умеет готовить разные блюда, одинаково названные блюда могут отличаться рецептом приготовления.

Декомпозиция:

  1. R1 ( повар, блюдо).
  2. R2 (блюдо, рецепт).

 

5NF (PJ/NF).

Отношение R находится в пятой нормальной форме (нормальной форме проекции-соединения) в том и только в том случае, когда любая зависимость соединения в R следует из существования некоторого возможного ключа в R.

 

Определение: Отношение R (A, B, … Z) удовлетворяет зависимости соединения (А, B, … Z) в том и только в том случае, когда R восстанавливается без потерь путём соединения своих проекций на A, B, … Z (наборы атрибутов отношения R). Полной декомпозицией отношения называют такую совокупность произвольного числа его проекций, соединение которых полностью совпадает с содержимым исходного отношения.

 

Иными словами, отношение находится в пятой нормальной форме тогда и только тогда, когда в каждой его полной декомпозиции все проекции содержат возможный ключ.

 

Пример отношения, которое находится в 4NF, но НЕ находится в 5NF: почасовики.

Дано отношение: R( преподаватель, кафедра, дисциплина). Считается, что приглашённый преподаватель может работать на нескольких кафедрах и вести различные дисциплины. В этом случае ключом отношения является полный набор из трёх атрибутов. В отношении отсутствуют многозначные зависимости, и поэтому оно находится в 4NF. Однако в нём нет наборов атрибутов, которые составляют возможные ключи отношения, и потому это отношение не в PJ/NF. При этом провести полную декомпозицию на два отношения нельзя.

 

Возможна декомпозиция следующего вида:

  1. R1 ( преподаватель, кафедра).
  2. R2 (преподаватель, дисциплина ).
  3. R3 (кафедра, дисциплина).

 

Отношение, не имеющее ни одной полной декомпозиции, также находится в пятой нормальной форме.

 









Дата добавления: 2015-07-30; просмотров: 958;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.007 сек.