Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
m_Rdb_готовый.docx
Скачиваний:
21
Добавлен:
17.03.2016
Размер:
702.25 Кб
Скачать

Друга і третя нф. Алгоритм декомпозиції

DEF. Відношення знаходиться в Другій Нормальній Формі (2НФ), якщо воно знаходиться в 1НФ і з нього виключені всі функціонально неповні залежності.

DEF. БД знаходиться в Другій Нормальній Формі (2НФ), якщо всі її відношення знаходяться в 2НФ.

DEF. Відношення знаходиться в Третій Нормальній Формі (3НФ), якщо воно знаходиться в 2НФ і з нього виключені всі транзитивні функціональні залежності.

DEF. БД знаходиться в Третій Нормальній Формі (3НФ), якщо всі її відношення знаходяться в 3НФ.

Основним прийомом нормалізації відношення є декомпозиція без втрат. Опишемо коротко загальний алгоритм декомпозиції. Скорочено аномальну ФЗ називатимемо неповну або транзитивну залежність.

1. Для кожного детермінанта аномальної функціональної залежності виписується своє відношення з цим детермінантом як ПК відношення.

2. Виписується відношення зв'язку, в яке включаються всі атрибути, що не увійшли до відношень з пункту 1, плюс до них всі ПК відношень з пункту 1 (поля зв'язку).

Слід пам'ятати, що нормалізація 1НФ проводиться послідовно 1НФ —» 2НФ —» 3НФ, тобто спочатку проводиться декомпозиція 1НФ по всіх функціонально неповних залежностях, а потім, отримані відношення розбиваються з метою позбавлення від транзитивних залежностей.

Застосуємо цей алгоритм до відношенню ВИКЛАДАЧ_ДИСЦИПЛІНА.

  • Приведемо відношення до 2НФ, тобто позбавимося від функціонально неповних залежностей:

Назва предмета → К-сть годин

Особистий номер → <Прізвище, Посада, Кафедра, Оклад, Телефон>

В результаті отримаємо три відношення:

ВИКЛАДАЧ = <Особистий номер, Прізвище, Посада, Оклад, Кафедра, Телефон>;

ПРЕДМЕТ = <Назва предмету, К-сть годин>;

НАВАНТАЖЕННЯ = <Особистий номер (FK), Назва предмету(FK)>

Знаком FK позначені поля зв’язку, що називаються зовнішніми ключами (foreign key).

  • Два останніх відношення не містять транзитивних залежностей, тому знаходяться в 3НФ. Відношення ВИКЛАДАЧ містить три транзитивних залежності:

Посада → Оклад;

Кафедра → Телефон;

Телефон → Кафедра.

Примінимо алгоритм декомпозиції для цих ФЗ. Строге слідування алгоритму потребує розбиття відношення ВИКЛАДАЧ на чотири

ТАРИФНА_СІТКА = <Посада, Оклад>

ТЕЛ_ДОВ1 = <Кафедра, Телефон (FK)>

ТЕЛ_ДОВ2 = <Телефон, Кафедра (FK)>

ВИКЛАДАЧ = <Особистий номер, Прізвище, Посада, Кафедра (FK)>.

В останнє відношення замість атрибуту Кафедра можна включити атрибут Телефон. Включення обох атрибутів у відношення ВИКЛАДАЧ надлишково. Більш того, можна в результаті аналізу наочної області і переговорів із замовником БД відмовитися від однієї сторони взаємно-однозначної залежності. Тоді відповідне відношення ТЕЛ_ДОВ1 або ТЕЛ_ДОВ2 пропаде. Проте якщо необхідно зберегти в схемі РБД обидві залежності, то доведеться залишити обидва відношення.

В результаті 3НФ РБД ВИКЛАДАЧ_ПРЕДМЕТ складається з шести відношень

ПРЕДМЕТ = <Назва предмету, К-сть годин>;

НАВАНТАЖЕННЯ = <Особистий номер (FK), Назва предмету (FK)>

ТАРИФНА_СІТКА = <Посада, Оклад>

ТЕЛ_ДОВ1 = <Кафедра, Телефон (FK)>

ТЕЛ_ДОВ2 = <Телефон, Кафедра (FK)>

ВИКЛАДАЧ = <Особистий номер, Прізвище, Посада (FK), Кафедра (FK)>.

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