Що таке перша нормальна форма?
Перш ніж зрозуміти Першу звичайну форму, треба знати, що таке нормалізація і чому це робиться? Нормалізація в загальних рисах - це техніка організації даних у базі даних з метою зменшення аномалії вставки, видалення та оновлення та усунення надмірності даних. Цей процес розділяє більші таблиці на менші та пов'язує їх між собою через зв'язки первинного та зовнішнього ключів. Дублюючі та ненормалізовані дані не тільки споживають додаткову пам’ять, але ускладнюють управління таблицею під час вставлення, видалення та оновлення таблиць у міру збільшення кількості даних. Тому дуже важливо нормалізувати таблиці перед розробкою бази даних будь-якої програми.
Перша нормальна форма, записана як 1NF, встановлює основні правила нормалізації даних і є першою формою, яка використовується при нормалізації даних таблиць. Він встановлює певні основні принципи нормалізації даних, які необхідно виконувати в кожній таблиці. Деякі принципи наведені нижче:
- Кожен стовпець повинен мати по одному атомному (значення, яке не можна розділити далі).
- У кожному стовпчику таблиці немає складених значень та повторюваних значень, оскільки це ускладнює пошук значень стовпця, що має кілька значень. Отже, кожен стовпець повинен мати єдине унікальне значення.
- Значення, що зберігаються в стовпці, повинні бути одного домену, щоб бути в 1NF.
- Усі стовпці в таблиці повинні мати унікальні назви.
- У таблиці повинен бути унікальний первинний ключ, який використовується для ідентифікації кожної записи по-різному.
Як працює перша нормальна форма?
Відповідно до основних принципів 1NF, згаданих вище,
- Не повинно бути складених значень стовпця, який можна розділити далі. Якщо стовпець у таблиці має значення, яке можна розділити далі, то для цього атрибута слід створити окрему таблицю з різними стовпцями в цій таблиці з унікальний первинний ключ. Наприклад, у таблиці «Співробітник», для адреси співробітника, яку можна розділити далі, має бути окрема таблиця адреса «Співробітник_адрес», у якій «Первинний ключ» та «Номер будинку», «Місто» та «Пінкод» у різних стовпцях.
Співробітник таблиці (до 1NF)
Emp_id | Emp_name | Emp_age | Адреса |
101 | Раху | 25 | Колонія Xyz, агра, 258996 |
102 | Ракеш | 28 | Квартира 304, дорога xyz, Лакнау, 568975 |
103 | Рахул | 45 | Будинок №123, біля лікарні, варанасі, 245687 |
Оскільки Emp_address має стільки даних для адреси для одного працівника, щоб бути в 1NF, вищевказану таблицю можна розкласти на дві нижче задані таблиці:
Таблиця1: Декларації співробітників (після 1NF)
Emp_id | Emp_name | Emp_age |
101 | Раху | 25 |
102 | Ракеш | 28 |
103 | Рахул | 45 |
Таблиця2: адреса співробітника (після 1NF)
Emp_id | Emp_houseno | Emp_city | Emp_pincode |
101 | Будинок № 564, колонія Xyz | агра | 258996 |
102 | Плоский 304, дорога ксиз | lucknow | 568975 |
103 | Будинок №123, біля лікарні | варанасі | 245687 |
- Для стовпця, який є нероздільним у 1NF, повинні бути атомні значення. Наприклад, у таблиці працівника може бути кілька Emp_projects, якими він / вона обробляв дотепер. Для того, щоб мати записи про всі проекти цього працівника, для кожного проекту працівника має бути окремий запис, який має унікальну цінність, а не проекти, розділені на ", "
Таблиця: Emp_projects (до 1NF)
Emp_id | Emp_years_of_ex perience | Emp_dept | Emp_projects |
101 | 3 | ІТ | abc, jkl |
102 | 2 | ІТ | bcd |
103 | 5 | Рахунки | Abc, cfg, xyz, hjk |
Таблиця: Emp_projects (Після 1NF)
Emp_id | Emp_years_of_ex perience | Emp_dept | Emp_projects |
101 | 3 | ІТ | абс |
101 | 3 | ІТ | jkl |
102 | 2 | ІТ | bcd |
103 | 5 | Рахунки | Abc |
103 | 5 | Рахунки | cfg |
103 | 5 | Рахунки | ксиз |
103 | 5 | Рахунки | hjk |
Таблиця: Emp_projects, що мають кілька повторюваних значень у наведеному вище прикладі, можна розділити далі на дві таблиці, щоб зменшити повторення:
У таблиці не повинно бути повторюваних значень.Повторення значень вимагає багато додаткової пам'яті, а також уповільнює пошук і оновлення, а обслуговування бази даних стає важким. Наприклад, у наведеній вище таблиці Employee_Projects є багато непотрібних повторюваних значень Emp_id, Emp_years_of_experience та Emp_dept, тому для цього потрібно створити нову таблицю, щоб зменшити повторення значень.
Таблиця1:
Emp_id | Emp_years_of_experienc e | Emp_dept |
101 | 3 | ІТ |
102 | 2 | ІТ |
103 | 5 | Рахунки |
Таблиця2:
Emp_id | Emp_projects |
101 | абс |
101 | jkl |
102 | bcd |
103 | Abc |
103 | cfg |
103 | ксиз |
103 | hjk |
Переваги першої нормальної форми
Нижче наведено деякі переваги першої нормальної форми (1NF):
- Однією з головних переваг 1NF є те, що він видаляє непотрібні значення, що повторюються, створюючи окрему таблицю і, отже, не створює жодних проблем під час вставлення, видалення та оновлення значень у базі даних.
- Робота з таблицями, що мають стовпці з кількома значеннями, розділеними на ', ' дуже складно під час пошуку конкретного значення в базі даних, розділивши всі значення стовпця і знову перетворивши їх у певний формат, витрачаючи багато часу і пам'яті в цьому. 1NF робить це легко, створюючи різні рядки для різних значень.
- 1NF є основою і є головним принципом, якого слід дотримуватися під час створення бази даних, а отже, є найважливішою Нормальною формою для подальших нормалізацій таблиць з нормалізацією 2NF та 3NF.
- 1NF важливий, оскільки створює функціональну залежність між двома таблицями за допомогою первинного ключа та зовнішнього ключа, який відіграє вирішальну роль під час роботи з таблицями бази даних.
- 1NF дозволяє користувачам ефективно використовувати запити до бази даних, оскільки видаляє неоднозначність, видаляючи нульові та кратні значення стовпця, що створює основні проблеми в майбутньому під час оновлення та вилучення бази даних.
Висновок
Працюючи з базами даних та створюючи таблиці для будь-якого додатку на початку, дуже важливо нормалізувати всі таблиці, оскільки це допомагає усунути аномалії вставки, видалення та оновлення. Нормалізація також знімає майбутні витрати та час. Менша кількість нульових значень і менша кількість зайвих даних робить базу даних більш компактною. Завдяки нормалізації створюється більше таблиць, що сприяє легкому та ефективному обслуговуванню даних. Завдяки нормалізації, очевидно, краща ефективність пошуку та сортування забезпечується за допомогою індексів та клавіш, і 1NF відіграє важливу роль у цьому.
Рекомендовані статті
Це посібник до Першої нормальної форми. Тут ми обговорюємо визначення, роботу та переваги першої нормальної форми разом з її прикладами. Ви також можете переглянути наступні статті, щоб дізнатися більше -
- Що таке MySQL?
- Що таке MySQL схема?
- Оператори MySQL
- MySQL Server