Diferența dintre 1NF și 2NF și 3NF

Diferența dintre 1NF și 2NF și 3NF
Diferența dintre 1NF și 2NF și 3NF

Video: Diferența dintre 1NF și 2NF și 3NF

Video: Diferența dintre 1NF și 2NF și 3NF
Video: Ce este un SSD și la ce te ajută - Cavaleria.ro 2024, Noiembrie
Anonim

1NF vs 2NF vs 3NF

Normalizarea este un proces care se realizează pentru a minimiza redundanțele care sunt prezente în datele din bazele de date relaționale. Acest proces va împărți în principal mesele mari în mese mai mici, cu mai puține redundanțe. Aceste tabele mai mici vor fi legate între ele prin relații bine definite. Într-o bază de date bine normalizată, orice modificare sau modificare a datelor va necesita modificarea unui singur tabel. Prima formă normală (1NF), a doua formă normală (2NF) și a treia formă normală (3NF) au fost introduse de Edgar F. Codd, care este și inventatorul modelului relațional și al conceptului de normalizare.

Ce este 1NF?

1NF este Prima formă normală, care oferă setul minim de cerințe pentru normalizarea unei baze de date relaționale. Un tabel care respectă 1NF asigură că reprezintă de fapt o relație (adică nu conține nicio înregistrare care se repetă), dar nu există o definiție universal acceptată pentru 1NF. O proprietate importantă este că un tabel care respectă 1NF nu poate conține atribute cu valoare relațională (adică toate atributele ar trebui să aibă valori atomice).

Ce este 2NF?

2NF este a doua formă normală folosită în bazele de date relaționale. Pentru ca un tabel să fie în conformitate cu 2NF, ar trebui să fie respectat 1NF și orice atribut care nu face parte din nicio cheie candidată (adică atribute non-prime) ar trebui să depindă pe deplin de oricare dintre cheile candidate din tabel.

Ce este 3NF?

3NF este a treia formă normală folosită în normalizarea bazelor de date relaționale. Conform definiției lui Codd, se spune că un tabel este în 3NF, dacă și numai dacă, acel tabel este în a doua formă normală (2NF) și fiecare atribut din tabel care nu aparține unei chei candidate, ar trebui să depindă direct pe fiecare cheie candidată a acelei mese. În 1982, Carlo Zaniolo a produs o definiție exprimată diferit pentru 3NF. Tabelele care respectă 3NF, în general, nu conțin anomalii care apar la inserarea, ștergerea sau actualizarea înregistrărilor în tabel.

Care este diferența dintre 1NF și 2NF și 3NF?

1NF, 2NF și 3NF sunt forme normale care sunt utilizate în bazele de date relaționale pentru a minimiza redundanțele în tabele. 3NF este considerată o formă normală mai puternică decât 2NF și este considerată o formă normală mai puternică decât 1NF. Prin urmare, în general, obținerea unui tabel care respectă forma 3NF va necesita descompunerea unui tabel care se află în 2NF. În mod similar, obținerea unui tabel care respectă 2NF va necesita descompunerea unui tabel care se află în 1NF. Cu toate acestea, dacă un tabel care respectă 1NF conține chei candidate care sunt alcătuite doar dintr-un singur atribut (adică chei candidate non-compozite), un astfel de tabel va respecta automat 2NF. Descompunerea tabelelor va avea ca rezultat operațiuni suplimentare de îmbinare (sau produse carteziene) la executarea interogărilor. Acest lucru va crește timpul de calcul. Pe de altă parte, tabelele care respectă formele normale mai puternice ar avea mai puține redundanțe decât tabelele care respectă doar formele normale mai slabe.

Recomandat: