1NF proti 2NF proti 3NF
Normalizacija je postopek, ki se izvaja za zmanjšanje odpuščanj, ki so prisotni v podatkih v relacijskih bazah podatkov. Ta postopek bo v glavnem razdelil velike tabele na manjše tabele z manj odpuščanj. Te manjše tabele bodo med seboj povezane z dobro opredeljenimi odnosi. V dobro normalizirani zbirki podatkov bo vsaka sprememba ali sprememba podatkov morala spremeniti samo eno tabelo. Prvo normalno obliko (1NF), drugo normalno obliko (2NF) in tretjo normalno obliko (3NF) je uvedel Edgar F. Codd, ki je tudi izumitelj relacijskega modela in koncepta normalizacije.
Kaj je 1NF?
1NF je prva normalna oblika, ki zagotavlja minimalni nabor zahtev za normalizacijo relacijske baze podatkov. Tabela, ki ustreza 1NF, zagotavlja, da dejansko predstavlja razmerje (tj. Ne vsebuje nobenih zapisov, ki se ponavljajo), vendar za 1NF ni splošno sprejete definicije. Pomembna lastnost je, da tabela, ki ustreza 1NF, ne bi mogla vsebovati atributov, ki so relacijski vrednosti (tj. Vsi atributi bi morali imeti atomske vrednosti).
Kaj je 2NF?
2NF je druga normalna oblika, ki se uporablja v relacijskih bazah podatkov. Da bi tabela ustrezala 2NF, bi jo moral izpolnjevati 1NF, vsak atribut, ki ni del nobenega ključa kandidata (tj. Neprimerni atributi), pa bi moral biti v celoti odvisen od katerega koli od ključnih ključev v tabeli.
Kaj je 3NF?
3NF je tretja normalna oblika, ki se uporablja pri normalizaciji relacijskih baz podatkov. Po Coddovi definiciji naj bi bila tabela v 3NF, če in samo, če je ta tabela v drugi normalni obliki (2NF), in vsak atribut v tabeli, ki ne spada v ključ kandidata, bi moral biti neposredno odvisen na vsakem kandidatskem ključu te tabele. Leta 1982 je Carlo Zaniolo podal drugačno izraženo definicijo za 3NF. Tabele, ki ustrezajo 3NF, na splošno ne vsebujejo nepravilnosti, ki se pojavijo pri vstavljanju, brisanju ali posodabljanju zapisov v tabelo.
Kakšna je razlika med 1NF in 2NF in 3NF?
1NF, 2NF in 3NF so običajne oblike, ki se uporabljajo v relacijskih bazah podatkov za zmanjšanje odpuščanj v tabelah. 3NF velja za močnejšo normalno obliko kot 2NF in velja za močnejšo normalno obliko kot 1NF. Zato bo na splošno za pridobitev tabele, ki ustreza obrazcu 3NF, potrebno razgraditi tabelo, ki je v 2NF. Podobno bo za pridobitev tabele, ki ustreza 2NF, potrebno razgraditi tabelo, ki je v 1NF. Če pa tabela, ki ustreza 1NF, vsebuje kandidatne ključe, ki so sestavljeni samo iz enega atributa (tj. Nekompozitnih kandidatnih ključev), bi taka tabela samodejno ustrezala 2NF. Dekompozicija tabel bo povzročila dodatne operacije združevanja (ali kartezijanske izdelke) pri izvajanju poizvedb. To bo povečalo čas računanja. Po drugi strani bi imele tabele, ki ustrezajo močnejšim normalnim obrazcem, manj odpuščanj kot tabele, ki ustrezajo le šibkejšim normalnim obrazcem.