Перша нормальна форма (1НФ). Приведення таблиці до першої нормальної форми. Приклади
У даній темі описується процес приведення довільних (хаотичних) таблиць баз даних до першої нормальної форми. Перед вивченням теми рекомендується ознайомитись з наступною темою:
Зміст
- 1. Перша нормальна форма 1НФ. Умови виконання
- 2. Приклад приведення таблиці до першої нормальної форми (1НФ). Облік проданих автомобілів
- 3. Приклад приведення до 1НФ. Дані про перепис
- 4. Приклад приведення до 1НФ. Облік книг в бібліотеці
- 5. Приклад приведення до 1НФ. Таблиця обліку навчального процесу
- Зв’язані теми
Пошук на інших ресурсах:
1. Перша нормальна форма 1НФ. Умови виконання
Хаотично створені таблиці даних не завжди відповідають першій нормальній формі (1НФ). Як відомо, приведення таблиці до першої нормальної форми є необхідною умовою нормалізації. Більш детально про необхідність застосування нормалізації в базі даних описується тут.
Таблиця вважається приведеною до першої нормальної форми (1НФ) якщо виконуються наступні умови:
- всі значення таблиці є атомарні (неподільні). Це означає, що комірки таблиці повинні містити одиночні значення і всі записи в окремому стовпчику таблиці (атрибуті) повинні мати один і той самий тип;
- в якості значень атрибуту таблиці не допускаються групи або масиви даних, що повторюються.
⇑
2. Приклад приведення таблиці до першої нормальної форми (1НФ). Облік проданих автомобілів
Задано базу даних обліку легкових автомобілів, яка описується таблицею Автомобілі. Структура таблиці наступна
В таблицю внесено наступні дані
Згідно з визначенням першої нормальної форми (1НФ) всі атрибути (стовпці, поля) таблиці повинні бути атомарними (неподільними).
У нашому випадку таблицю слід розбити на атомарні (неподільні частини).
Атрибут Номер можна розбити на три неподільні частини, які мають наступні імена:
- Серія1;
- Номер;
- Серія2.
Атрибут Автомобіль включає в себе марку та модель автомобіля. Тому, доцільно розбити цей атрибут на два поля:
- Марка – безпосередньо марка автомобіля (Mersedes-Benz, Toyota, Subaru і т.д.);
- Модель – модель автомобіля (G-400, Sequoia, Avalon, Forester і т.д).
Так само атрибут Характеристики включає декілька частин, які можуть бути неподільними:
- Коробка – вид коробки передач (механічна, автомат, типтронік та інші);
- Паливо – вид палива (бензин, дизель, електрика та інший);
- Об’єм – об’єм двигуна в літрах.
Після внесених змін, структура таблиці наступна
Дані в зміненій таблиці можуть бути представлені наступним чином.
Вищенаведена таблиця приведена до першої нормальної форми 1НФ. Не дивлячись на збільшення кількості стовпців, така таблиця вже може бути приведена до другої нормальної форми 2НФ.
⇑
3. Приклад приведення до 1НФ. Дані про перепис
Задано довільну таблицю, що містить інформацію про громадянина, яка використовується при переписі населення. Необхідно привести цю таблицю до 1 НФ.
Структура таблиці наступна.
У таблиці атрибути Громадянин, Номер та Адреса містять набори (масиви) даних. Якщо не реалізувати поділ цих даних на атоми (неподільні елементи), то при введенні даних можуть бути їх спотворення. Ці спотворення будуть проявлятись в тому, що одні й ті ж дані, введені некоректно, для бази даних будуть сприйматись як різні дані.
Приклад спотворення даних. У полі (атрибуті) Громадянин одна й та сама людина може бути введена по різному (Іванов І.І., Іванов Іван Іванович, Іванов І., І.І. Іванов). Для бази даних це різні люди. Те саме стосується й інших атрибутів таблиці.
Тому, щоб привести таблицю до першої нормальної форми потрібно розбити на атомарні частини наступні атрибути (поля) таблиці
- атрибут Громадянин розбивається на 3 атрибути: Прізвище, Ім’я, По-батькові;
- атрибут Номер розбивається на 2 атрибути: Серія, Номер документу;
- атрибут Адреса розбивається на такі атрибути: Країна, Вид регіону, Назва регіону, Вид населеного пункту, Назва населеного пункту, Назва частини міста, Вид помешкання, Номер помешкання.
У результаті внесених змін, структура таблиці буде наступною:
Така таблиця вважається приведеною до першої нормальної форми 1НФ.
⇑
4. Приклад приведення до 1НФ. Облік книг в бібліотеці
У прикладі відбувається приведення таблиці до 1НФ, яка відображає дані про книгу в бібліотеці.
Щоб привести цю таблицю до першої нормальної форми потрібно виділити неподільні (атомарні) елементи.
Аналізуючи структуру таблиці, на атомарні елементи може бути розбите поле (атрибут) Книга.
Спочатку відбувається розбиття книги на дві частини:
- Автор – прізвище, ім’я та по батькові автора;
- Назва – назва книги.
В свою чергу, поле Автор може бути розбите на 3 частини:
- Прізвище;
- Ім’я;
- По–батькові.
Після виконаних перетворень структура таблиці наступна
Задачу розв’язано, таблиця приведена до першої нормальної форми (1НФ).
⇑
5. Приклад приведення до 1НФ. Таблиця обліку навчального процесу
Задано базу даних обліку навчального процесу в навчальному закладі яка представлена однією таблицею. Здійснити приведення таблиці до першої нормальної форми (1НФ).
Структура вихідної таблиці наступна.
Щоб привести таблицю до першої нормальної форми потрібно зробити усі атрибути атомарними.
Тут доцільно розбити поле (атрибут) Студент на декілька атрибутів:
- Прізвище студента;
- Ім’я студента;
- По-батькові студента.
Також поле викладач потрібно розбити на 3 частини:
- Прізвище викладача;
- Ім’я викладача;
- По-батькові викладача.
У результаті внесених змін, таблиця буде мати структуру, яка відповідає першій нормальній формі 1НФ.
⇑
Зв’язані теми
⇑