Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
baz_dan / Главы1-3.doc
Скачиваний:
52
Добавлен:
12.03.2015
Размер:
529.92 Кб
Скачать

По этой причине возникают следующие недостатки отношения r4:

  1. Номер телефона будет многократно повторяться т.к. этот атрибут присутствует в строке для каждого сотрудника.

  2. Изменение номера телефона в какой-либо комнате влечет за собой изменения в нескольких строчках таблицы (в зависимости от количества сотрудников в этой комнате).

  3. Если в комнате, пусть временно, например, во время ремонта, никто не сидит, то сведения о комнате и номер телефона вообще не попадают в базу данных, т.к. для R4 ключом является Таб№ сотрудника.

Для устранения этих недостатков продолжим нормализацию отношения R4, но предварительно введем некоторые понятия.

Определение 10. Транзитивная зависимость. Пусть Х, У, Z – атрибуты одного отношения, и между ними существуют следующие функциональные зависимости:

ХУ, УZ, но Z У и У Х. Тогда говорят, что Z транзитивно зависит от Х.

Х

Утранзитивная зависимость.

Z

В отношении R4 также присутствует транзитивная зависимость.

Определение 11. Отношение находится в 3НФ, если оно находится во 2НФ и каждый не ключевой атрибут не транзитивно зависит от первичного ключа.

В отношении же R4, нарушена 3НФ. Проведем декомпозицию R4 , разделив его на два отношения, т.е. уберем транзитивную зависимость.

R5: Сотрудник R6: Комната

Таб№

ФИО

Оклад

Комната

№комнаты

Телефон

211

Иванов И.И.

5000

12

12

616

358

Темин Т.Т.

7000

12

5

306

360

Котов К.К.

10000

5

Разделив отношение R4 на два отношения R5 и R6, мы получили отношения в 3НФ и при этом устранили выше перечисленные недостатки.

Итак, наша база данных состоит из трех отношений:

R3: Дети(Таб№, Имя_ребенка, Возраст_ребенка)

R5:Сотрудник(Таб№, ФИО, Оклад, Комната)

R6:Комната(№комнаты, Телефон)

На практике, как правило, ограничиваются приведением отношений к 3НФ. Но иногда возникает необходимость и в приведении к более высоким нормальным формам.

    1. Нормальная форма Бойса – Кодда

Отношение находится в нормальной форме Бойса – Кодда (НФБК) в том случае, если оно находится в 3НФ, и каждый детерминант отношения является возможным ключом отношения.

Напомним, что детерминант – это любой атрибут отношения, от которого полностью функционально зависит другой атрибут.

Рассмотрим пример отношения сдачи текущих экзаменов студентами:

Экзамены( №зачетки, Идент_номер, Дисциплина, Дата, Оценка).

В этом примере атрибут Идент_номер (Идентификационный номер) – это некий уникальный номер студента, введенный для электронного учета. Это отношение имеет два возможных ключа:

№зачетки, Дисциплина, Дата и Идент_номер, Дисциплина, Дата

Рассмотрим Функциональные зависимости в этом отношении:

Эти два варианта равнозначны. Просто в первом варианте за первичный ключ принят первый возможный ключ, а во втором – второй возможный ключ. Можно рассматривать любой из этих вариантов, мы остановимся на первом. №зачетки и Идент_номер взаимно определяют друг друга, т.е являются детерминантами, но возможными ключами не являются, т.к. каждый возможный ключ состоит из трех атрибутов. Т.е. по определению это отношение не является отношением в НФБК. Разобъем его на два отношения R1 и R2:

Соседние файлы в папке baz_dan