У нас: 141825 рефератів
Щойно додані Реферати Тор 100
Скористайтеся пошуком, наприклад Реферат        Грубий пошук Точний пошук
Вхід в абонемент


Нормалізація даних в реляційній моделі

Нормалізацією називається формальна процедура, в ході якої тарибути даних групуются в таблиці, а таблиці групуються в бази даних. Задачами нормалізацї є:

q вилучення з таблиць інформації, що повторюється;

q створення структури, в якій передбачена можливість її майбутніх змін;

q створення структури, в якій вплив структурних змін на додатки, що використовують дані цієї бази даних, зведено до мінімума.

1. Перша нормальна форма

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

2. Друга нормальна форма

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

4.3. Третя нормальна форма

Для третьої нормальної форми потрібно, щоб всі неключові стовпці таблиці не тільки залежали від первинного ключа таблиці, але були незалежними один від одного, тобто, щоб були відсутні транзитивні функціональні залежності між стовпцями таблиці. Для цього потрібно, щоб таблиці були попередньо приведені до першої та другої нормальної форми.

2. Типи відношень

а) Відношення “один-до-одного”

Найпростішим відношенням між таблицями є відношення “один-до-одного”. В такому відношенні одному запису однієї таблиці відповідає тільки один запис у іншій. Таблиці, що зв’язані відношенням “один-до-одного” можна об’єднати в одну таблицю, яка складається з полів обох таблиць. Відношення “один-до-одного” часто використовують для розділення таблиць, що містять велику кількість полів. Наприклад, це може бути потрібним для того, щоб скоротити час перегляду полів, що містять певний набір даних. В деяких випадках необхідно керувати доступом до частин таблиць, які містять важливі або конфиденційні дані. На рис. 5.2 показана E-R схема для таблиці “Інженер” та “Комп’ютер”. Одиниці з обох сторін ромба вказують на відношення “один-до одного”.

Таблиця з обов’язковим відношенням “один-до-одного” є базовими. Таблиця, зв’язана необов’язковим відношенням з базовою є зв’язаною таблицею. Для зберігання бази данних, що містить декілька таблиць, що зв’язані відношеннями “один-до-одного”, деякі з яких є необов’язковими, потрібно менше місця на диску.

б) Відношення типу “один-до-багатьох”

Відношення “один-до-багатьох” зв’язує один запис першої таблиці з декількома записами другої за допомогою первинного ключа базової таблиці і відповідного йому зовнішнього ключа зв’язаної таблиці. Зовнішній ключ таблиці, що містить велику кількість відношень, може входити до складеного первинного ключа, але він є зовнішнім по відношенню до базової таблиці. Відношення “один-до-багатьох” використовується найбільш часто. На E-R схемі, що показана на рис.5.3 , це відношення позначено символом m.

в) Відношення “багато-до-одного”

Відношення “багато-до-одного” протилежно відношенню “один-до-багатьох”. Якщо вибір відношення “багато-до-одного” або “один-до-багатьох” не має великої ролі, то відношення між таблицями називається рефлексивним. Відношення “багато-до-одного” є відображенням відношення “один-до-багатьох”. Всі відношення “багато-до-одного” в Access є рефлексивними. E-R схема для рефлексивних відношень виглядає, як показано на рис. Рефлексивні відношення позначаються дієсловом у відповідній формі, який розміщується зовні ромба, що визначає відношення.