Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Бази даних КП.doc
Скачиваний:
26
Добавлен:
27.10.2018
Размер:
622.08 Кб
Скачать

3.3 Побудова схеми реляційної бази даних у третій нормальній формі

База даних (таблиця 3.1), що буде реалізована, представлена в 1 НФ, так як вона:

  • не має однакових кортежів;

  • кортежі не впорядковані;

  • атрибути не впорядковані та відрізняються по найменуванню;

  • всі визначення атрибутів атомарні.

Таблиця 3.1 - База даних у 1НФ

ID-код*

Місто перебування клієнта

Контактний телефон

Код пільги

Назва пільги

Дата оформлення заяви

Прізвище клієнта

Розмір знижки

Адреса клієнта

Вартість оформлення заяви

Розмір знижки

Тип заяви*

Категорія заяви

Заголовок заяви

Опис заяви

Первинний ключ: «ID-код» та «Тип заяви».

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

Для приведення відношення до 2НФ необхідно замінити T(K1,K2,F1,F2), первинний ключ (K1,K2), функціональна залежність K1->F1 на T1(K1,F1) – табл. 3.2, первинний ключ K1 та T2(K1,K2,F2) – табл. 3.3, первинний ключ (K1,K2).

В даному відношенні поля «Прізвище клієнта», «Адреса клієнта», «Місто перебування клієнта», «Код пільги», «Розмір пільги», «Назва пільги» залежать від частини первинного ключа (від поля «Контактний телефон») тому виносяться в окрему таблицю (табл. 3.2).

Відношення у 2НФ представляють табл. 3.2 та табл. 3.3.

Таблиця 3.2 – Клієнт-Пільги

Прізвище клієнта

Контактний телефон*

Код пільги

Місто перебування

Адреса

Розмір знижки

Назва пільги

Таблиця 3.3 – Заяви

ID-код *

Тип

Категорія

Заголовок

Опис

Телефон

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

Для приведення відношення до 3НФ необхідно замінити T(K, F1, F2) первинний ключ K, транзитивна функціональна залежність F1->F2 на T1(F1, F2) первинний ключ F1, та T2(K, F2) первинний ключ К.

У табл. 3.2 від первинного ключа «ID-код» транзитивно через поле «Контактний телефон» залежать «Прізвище клієнта», «Місто перебування», «Адреса клієнта», «Телефон підприємства», через поле «Назва типу» транзитивно залежать поле «Вартість». Тому відношення розбивається на табл. 3.4, табл. 3.5 та табл. 3.6.

Таблиця 3.4 – Клієнт

Прізвище

Ім’я

По батькові

Телефон*

E-mail

Місто

Адреса

Код пільги

Таблиця 3.5 – Типи

Назва типу*

Вартість

Таблиця 3.6 – Пільги

Назва пільги

Код пільги*

Розмір знижки

Відношення, що знаходиться в 3НФ представлено сукупністю таблиць – «Пільги» (Таблиця 3.6), «Заяви» (Таблиця 3.3), «Клієнт» (Таблиця 3.4), «Типи» (Таблиця 3.5).

Схема бази даних, що реалізована в СУБД MS Access, представлена на рис. 3.7.

Рисунок 3.7 – Схема бази даних