Diferenca midis 1NF dhe 2NF dhe 3NF

Diferenca midis 1NF dhe 2NF dhe 3NF
Diferenca midis 1NF dhe 2NF dhe 3NF

Video: Diferenca midis 1NF dhe 2NF dhe 3NF

Video: Diferenca midis 1NF dhe 2NF dhe 3NF
Video: Leksion 5 - DB1 - Normalizimi i tabelave 2024, Nëntor
Anonim

1NF vs 2NF vs 3NF

Normalizimi është një proces që kryhet për të minimizuar tepricat që janë të pranishme në të dhënat në bazat e të dhënave relacionale. Ky proces kryesisht do të ndajë tabelat e mëdha në tabela më të vogla me më pak teprica. 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 në të dhëna do të kërkojë modifikimin e vetëm 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 konceptit të normalizimit.

Çfarë është 1NF?

1NF është forma e parë normale, e cila ofron grupin minimal të kërkesave për normalizimin e një baze të dhënash relacionale. Një tabelë që përputhet me 1NF siguron që në të vërtetë përfaqëson një relacion (d.m.th. nuk përmban asnjë rekord që përsëritet), por nuk ka një përkufizim të pranuar universalisht për 1NF. Një veti e rëndësishme është se një tabelë që përputhet me 1NF nuk mund të përmbajë asnjë atribut me vlerë relacionale (d.m.th. të gjitha atributet duhet të kenë vlera atomike).

Çfarë është 2NF?

2NF është forma e dytë normale e përdorur në bazat e të dhënave relacionale. Që një tabelë të jetë në përputhje me 2NF, ajo duhet të pajtohet me 1NF dhe çdo atribut që nuk është pjesë e ndonjë çelësi kandidat (d.m.th. atributet jo-primare) duhet të varet plotësisht nga ndonjë prej çelësave kandidatë në tabelë.

Çfarë është 3NF?

3NF është forma e tretë normale e përdorur në normalizimin e bazës së të dhënave relacionale. Sipas përkufizimit 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 një çelësi kandidat, duhet të varet drejtpërdrejt në çdo çelës kandidat të asaj tabele. 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 përditësimit të të dhënave në tabelë.

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

1NF, 2NF dhe 3NF janë forma normale që përdoren në bazat 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 formën 3NF do të kërkojë zbërthimin 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ë zbërthimin e një tabele që është në 1NF. Megjithatë, nëse një tabelë që përputhet me 1NF përmban çelësa kandidatë që përbëhen vetëm nga një atribut i vetëm (d.m.th. çelësat kandidatë jo të përbërë), një tabelë e tillë do të përputhet automatikisht me 2NF. Zbërthimi i tabelave do të rezultojë në operacione shtesë të bashkimit (ose produkte karteziane) gjatë ekzekutimit të pyetjeve. 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 teprica sesa tabelat që përputhen vetëm me format normale më të dobëta.

Recommended: