1NF vs 2NF vs 3NF

Normalizimi është një proces që kryhet për të minimizuar tepricat që janë të pranishme në të dhëna në bazat e të dhënave relacionale. Ky proces kryesisht do të ndajë tabela të mëdha në tabela më të vogla me më pak tepricë. Këto tabela më të vogla do të lidhen me njëra-tjetrën përmes marrëdhënieve të përcaktuara mirë. Në një bazë të dhënash të normalizuar mirë, çdo ndryshim ose modifikim i të dhënave do të kërkojë modifikimin e një tabele të vetme. Forma e parë normale (1NF), forma e dytë normale (2NF) dhe forma e tretë normale (3NF) u prezantua nga Edgar F. Codd, i cili është gjithashtu shpikësi i modelit relacional dhe koncepti i normalizimit.

Farë është 1NF?

1NF është forma e parë normale, e cila siguron grupin minimal të kërkesave për normalizimin e një baze të të dhënave relacionale. Një tabelë që përputhet me 1NF siguron që në të vërtetë paraqet një lidhje (d.m.th. nuk përmban asnjë regjistrim që po përsëritet), por nuk ka një përcaktim të pranuar në mënyrë universale për 1NF. Një veti e rëndësishme është që një tabelë që përputhet me 1NF nuk mund të përmbajë ndonjë atribut që vlerësohet me lidhje (d.m.th. të gjitha atributet duhet të kenë vlera atomike).

Farë është 2NF?

2NF është forma e dytë normale që përdoret në bazën e të dhënave relacionale. Që një tabelë të përputhet me 2NF, duhet të jetë e përmbushur me 1NF dhe çdo atribut që nuk është pjesë e ndonjë çelësi të kandidatit (d.m.th. atributet jo kryesore) duhet të varet plotësisht nga ndonjë prej çelësave të kandidatit në tabelë.

Farë është 3NF?

3NF është forma e tretë normale që përdoret në normalizimin e bazës së të dhënave relacionale. Sipas përcaktimit të Codd, një tabelë thuhet se është në 3NF, nëse dhe vetëm nëse, ajo tabelë është në formën e dytë normale (2NF), dhe çdo atribut në tabelë që nuk i përket çelësit të kandidatit, duhet të varet drejtpërdrejt në çdo çelës kandidatësh të asaj tryeze. Në 1982 Carlo Zaniolo prodhoi një përkufizim të shprehur ndryshe për 3NF. Tabelat që përputhen me 3NF në përgjithësi nuk përmbajnë anomali që ndodhin gjatë futjes, fshirjes ose azhurnimit të regjistrave në tabelë.

Cili është ndryshimi midis 1NF dhe 2NF dhe 3NF?

1NF, 2NF dhe 3NF janë forma normale që përdoren në bazën e të dhënave relacionale për të minimizuar tepricat në tabela. 3NF konsiderohet si një formë normale më e fortë se 2NF, dhe konsiderohet si një formë normale më e fortë se 1NF. Prandaj në përgjithësi, marrja e një tabele që përputhet me formularin 3NF do të kërkojë dekompozimin e një tabele që është në 2NF. Në mënyrë të ngjashme, marrja e një tabele që përputhet me 2NF do të kërkojë dekompozimin e një tabele që është në 1NF. Sidoqoftë, nëse një tabelë që përputhet me 1NF përmban çelësat e kandidatit që janë të përbërë vetëm nga një atribut i vetëm (d.m.th. çelësat jo të përbërë të kandidatëve), një tabelë e tillë do të përputhej automatikisht me 2NF. Zbërthimi i tabelave do të rezultojë në operacione shtesë bashkimi (ose produkte Karteziane) kur ekzekutoni pyetje. Kjo do të rrisë kohën e llogaritjes. Nga ana tjetër, tabelat që përputhen me forma normale më të forta do të kishin më pak tepricë sesa tabelat që përputhen vetëm me format më të dobëta normale.