Каква е първата нормална форма?
Преди да разбере Първата нормална форма, човек трябва да има знания какво е Нормализация и защо се прави? Нормализирането като цяло е техниката на организиране на данните в базата данни с цел намаляване на аномалията при вмъкване, изтриване и актуализиране и премахване на излишността на данните. Този процес разделя по-големите таблици на по-малки и ги свързва помежду си чрез връзки на първичния и външния ключ. Дублиращите се и ненормализирани данни не само консумират допълнителна памет, но затрудняват управлението на таблицата, докато вмъкването, изтриването и актуализирането на таблици с увеличаването на броя на данните. Следователно е много важно да се нормализират таблиците, преди да се проектира базата данни на всяко приложение.
Първата нормална форма, написана като 1NF, определя основните правила за нормализиране на данните и е първата форма, използвана при нормализиране на данните на таблиците. Той определя някои основни принципи за нормализиране на данните, които трябва да бъдат изпълнени от всяка таблица. Някои от принципите са дадени по-долу:
- Всяка колона трябва да има единични атомни (стойности, които не могат да бъдат разделени по-нататък) стойности.
- Всяка колона в таблицата няма съставни стойности и повтарящи се стойности, тъй като затруднява търсенето на стойностите за колоната с множество стойности. Така че всяка колона трябва да има една единствена уникална стойност.
- Стойностите, съхранявани в колона, трябва да са от същия домейн, за да бъдат в 1NF.
- Всички колони в таблицата трябва да имат уникални имена.
- Таблицата трябва да има уникален първичен ключ, който се използва за идентифициране на всеки запис по различен начин.
Как работи първата нормална форма?
Според основните принципи на 1NF, споменати по-горе,
- Не трябва да има съставни стойности за колона, която може да бъде разделена допълнително. Ако има колона в таблица със стойност, която може да бъде разделена допълнително, тогава за този атрибут трябва да се създаде отделна таблица с различни колони в тази таблица с уникален първичен ключ. Например, в таблица на служителите, за адрес на служител_адрес, който може да бъде разделен по-нататък, трябва да има отделна таблица на служителя_адрес, като служителят_ид е първичен ключ, а номер на къща, град и пинкод като различни колони.
Служител на масата (преди 1NF)
Emp_id | Emp_name | Emp_age | Emp_address |
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, път Xyz | 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