Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Госы БД .docx
Скачиваний:
7
Добавлен:
27.04.2019
Размер:
476.99 Кб
Скачать
  1. 3Нф: Основные определения и правила преобразования.

Согласно определению Кодда, отношение R находится в 3NF тогда и только тогда, когда выполняются следующие условия:

  • Отношение R находится во второй нормальной форме.

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

Неключевой атрибут отношения R  - это атрибут, который не принадлежит ни одному из потенциальных ключей R.

Функциональная зависимость множества атрибутов Z от множества атрибутов X (записывается X → Z, произносится)является транзитивной, если существует такое множество атрибутов Y, что X → Y и Y → Z. При этом ни одно из множеств XY и Z не является подмножеством другого, то есть функциональные зависимости X → ZX → Y и Y → Z не являются тривиальными.

Понятное определение Билла Кента: каждый неключевой атрибут “должен предоставлять информацию о ключе, полном ключе и ни о чем, кроме ключа”. Условие зависимости от «полного ключа» неключевых атрибутов обеспечивает то, что таблица находится во второй нормальной форме. А условие зависимости их от «ничего, кроме ключа» — то, что они находятся в третьей нормальной форме.

Пример:

Сотрудник(ключ)

Отдел

Телефон отдела

Гришин

Бухгалтерия

11-22-33

Васильев

Бухгалтерия

11-22-33

Петров

Снабжение

44-55-66

В отношении атрибут «Сотрудник» является первичным ключом. Личных телефонов у сотрудников нет, и телефон сотрудника зависит исключительно от отдела.

Таким образом, в отношении существуют следующие функциональные зависимости: Сотрудник → Отдел, Отдел → Телефон, Сотрудник → Телефон.

Зависимость Сотрудник → Телефон является транзитивной, следовательно, отношение не находится в 3NF.

В результате декомпозиции отношения R1 получаются два отношения, находящиеся в 3NF:

Отдел

Телефон

Бухгалтерия

11-22-33

Снабжение

44-55-66

Сотрудник

Отдел

Гришин

Бухгалтерия

Васильев

Бухгалтерия

Петров

Снабжение

Исходное отношение R1 при необходимости легко получается в результате операции соединения отношений R2 и R3.

1 Обычно для создания таких полей используется автоинкрементированное, которое или существует как тип данных(Access) или вводится посредством элементов управления СУБД – триггеров посредством SQL – нотации.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]