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

1.3 Нормалізація

На основі визначеної ER-моделі та сформованих атрибутів сутностей можна розробляти базу даних. Але для реляційну базу даних потрібно привести до нормальної форми – набору вимог, якому база даних повинна відповідати.

Процес перетворення бази даних до вигляду, що відповідає нормальним формам, називається нормалізацією. Нормалізація дозволяє забезпечити базу даних від логічних і структурних проблем, що називаються аномаліями даних. Наприклад, коли існує декілька однакових записів в таблиці, існує ризик порушення цілісності даних при оновленні таблиці. Таблиця, що пройшла нормалізацію, менш схильна до таких проблем, оскільки її структура передбачає визначення зв'язків між даними, що виключає необхідність в існуванні записів з інформацією, що повторюється.

Основне призначення нормальних форм – приведення структури бази даних до вигляду, що забезпечує мінімальну надмірність. Таким чином, нормалізація не має на меті зменшення або збільшення продуктивності роботи або ж зменшення або збільшення об'єму бази даних . Кінцевою метою нормалізації є зменшення потенційної суперечності інформації, що зберігається в базі даних.

Існують шість нормальних форм. Розглянемо тільки три з них, що використовуються найчастіше.

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

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

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

Таким чином, відношення знаходиться в 3НФ тоді і лише тоді, коли воно знаходиться в 3НФ і відсутні транзитивні залежності неключевих атрибутів від ключових. Транзитивною залежністю неключевих атрибутів від ключових називається наступна: A B і B C, де A – набір ключових атрибутів (ключ), B і С – різна безліч неключевих атрибутів.

При вирішенні практичних завдань в більшості випадків друга або третя нормальні форми є достатніми. Процес проектування реляційної бази даних, як правило, закінчується приведенням до цих форм [4].

Проведемо нормалізацію кожного з відношень, атрибути яких визначені вище (див. п. 1.2).

Для відношення Працівник-Відділ визначимо атрибути та приведемо таблицю до НФ1. Ключовим атрибутом визначено атрибут прізвища ім’я та по-батькові працівника (П.І.П.). Неатомарний атрибутом є «паспорт», тому розпишемо його на «№ паспорта», «серія паспорта», «Коли виданий». 1НФ показана на рисунку 2.

П.І.П.

ідентифікаційний номер

№ паспорта

серія паспорта

Коли виданий

Дата народження

Адреса

№ тел.

Ставка

Стаж

Сімейний стан

К-сть дітей

посада

Відпускні

Назва відділу

Завідуючий

№ тел. відділу

Кількість працюючих

Корисна площа

Рисунок 2 – 1НФ для відношення Працівник-Відділ

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

П.І.П. → інде. номер

П.І.П. → № паспорта

П.І.П. → серія паспорта

П.І.П. → дата народження

П.І.П. → адреса

П.І.П. → № телефону

П.І.П. → ставка

П.І.П. → стаж

П.І.П. → посада

П.І.П. → назва відділу

Назва відділу → завідуючий

Назва відділу → № телефону

Назва відділу → кількість працівників

Отже, 2НФ для відношення Працівник-відділ показана на рисунку 3.

П.І.П

ідент. номер

серія паспорта

дата народження

адреса

№ тел.

ставка

стаж

посада

назва відділу

назва відділу

№ телефону

кількість працівників


Рисунок 3 – 2 НФ для відношення Працівник-Відділ

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

Проведемо нормалізації для відношення Відділ – Обладнання. Атрибути сутностей не мають неатомарності, тому для приведення таблиці в 1 НФ перетворень не потрібно. 1 НФ показано не рисунку 4.

Назва відділу

завідуючий

№ телефону

Інвентарний номер

Назва обладнання

Кінець експлуатації

Відповідальний за стан

Назві відділу


Далі визначено функціональні залежності. 2 НФ показана на рисунку 5.

Назва відділу → завідуючий

Назва відділу → № телефону

Назва відділу → кількість працівників

Інвентарний номер обладнання → назва відділу

Інвентарний номер обладнання → обладнання

Інвентарний номер обладнання → кінець експлуатації

Інвентарний номер обладнання → відповідальний за стан

назва відділу

№ телефону

кількість працівників


назва відділу

інв. ном. обладнання

назва обладнання

кінець експлуатації

відповідальний за стан

Рисунок 4 – 2НФ для відношення Відділ-Обладнання

Як і в попередньому випадку, транзитивних залежностей нема.

Далі розглянемо відношення Відділ – Орендоване обладнання. Атрибути сутності Орендоване обладнання майже такі самі як сутності Обладнання, але доданий ще один атрибут Орендатор. 1НФ показана на рисунку 5.

1НФ.

Назва відділу

завідуючий

№ телефону

к-сть працівників

інвентарний номер

назва обладнання

дата кінця експлуатації

назва відділу

орендатор

Рисунок 5 – 2НФ для відношення Відділ-Орендоване обладнання

Функціональні залежності показані у списку, а 2НФ на рисунку 6.

Назва відділу → завідуючий

Назва відділу → № телефону

Назва відділу → кількість працівників

Інвентарний номер → назва відділу

Інвентарний номер → назва обладнання

Інвентарний номер → дата кінця експлуатації

Інвентарний номер → орендатор

назва відділу

№ телефону

кількість працівників


назва відділу

інв. ном. обладнання

назва обладнання

кінець експлуатації

відповідальний за стан

орендатор

Рисунок 6 – 2НФ для відношення Відділ-Орендоване обладнання

Транзитивних залежностей нема, тому 3НФ не потрібна.

Наступним розглянемо, відповідно до ER- моделі, відношення Орендоване обладнання – Орендатор, 1НФ якого показана на рисунку 7

Інвентарний номер

Назва обладнання

Дата кінця експл.

Назва відділу

Орендатор

Договір

Номер паспорта

Серія паспорта

Торговий патент

паркова

Місце

Сектор

Товар

Будова

Водопост.

Електропост.

Плата за місце

Склад

Комірка

товар

Плата за склад

Рисунок 7 – 1НФ для відношення Орендатор-орендоване обладнання

Розглянемо перетворення до 2НФ для даного відношення. На рисунку 8 показана 2НФ.

Інвентарний номер → назва відділу

Інвентарний номер → назва обладнання

Інвентарний номер → дата кінця експлуатації

Інвентарний номер → орендатор

Орендатор → договір

Орендатор → номер паспорта

Орендатор → торговий патент

Орендатор → місце

Орендатор → сектор

Орендатор → товару

Орендатор → будова

Орендатор → водопостачання

Орендатор → електропостачання

Орендатор → плата за місце

Орендатор → склад

Орендатор → комірка

Орендатор → товар

Орендатор → плата за склад

назва відділу

інв. ном. обладнання

назва обладнання

кінець експлуатації

відповідальний за стан

орендатор

орендатор

договір

номер паспорта

торговий патент

місце

сектор

товар

будова

водопост.

елекроп.

плата за місце

склад

комірка

товар

плата за склад

Рисунок 7 – 2НФ для відношення Орендатор-Місця

Після проведення аналізу таблиці в 2НФ виникли транзитивні залежності пов’язані з атрибутами Місце і Склад. Тому приведемо таблицю в 3НФ.

Інвентарний номер → назва відділу

Інвентарний номер → назва обладнання

Інвентарний номер → дата кінця експлуатації

Інвентарний номер → орендатор

Орендатор → договір

Орендатор → номер паспорта

Орендатор → торговий патент

Договір → місце

Договір → сектор

Договір → товару

Договір → будова

Договір → водопостачання

Договір → електропостачання

Договір → плата за місце

Договір → склад

Договір → комірку

Договір → товар

Договір → плата за склад

3НФ показана на рисунку 8.

назва відділу

інв. ном. обладнання

назва обладнання

кінець експлуатації

відповідальний за стан

орендатор

орендатор

договір

номер паспорта

торговий патент

договір

місце

сектор

товар

будова

водо пост.

електропост.

плата за місце

договір

склад

комірка

товар

плата за склад

Рисунок 8 – 3НФ для відношення Орендатор-Місця

Таким чином було проведено нормалізацію до 3НФ, що буде достатньо для побудови бази даних.

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