Razlika med 1NF in 2NF ter 3NF

Razlika med 1NF in 2NF ter 3NF
Razlika med 1NF in 2NF ter 3NF

Video: Razlika med 1NF in 2NF ter 3NF

Video: Razlika med 1NF in 2NF ter 3NF
Video: Difference between 3NF and BCNF, De-normalization 2024, November
Anonim

1NF proti 2NF proti 3NF

Normalizacija je postopek, ki se izvaja za zmanjšanje odvečnosti, ki so prisotne v podatkih v relacijskih bazah podatkov. Ta postopek bo večinoma razdelil velike tabele na manjše tabele z manj presežki. Te manjše tabele bodo med seboj povezane prek dobro definiranih odnosov. V dobro normalizirani bazi podatkov bo vsaka sprememba ali modifikacija podatkov zahtevala spreminjanje samo ene tabele. Prvo normalno obliko (1NF), drugo normalno obliko (2NF) in tretjo normalno obliko (3NF) je predstavil 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 je v skladu z 1NF, zagotavlja, da dejansko predstavlja relacijo (tj. ne vsebuje nobenih zapisov, ki se ponavljajo), vendar za 1NF ni univerzalno sprejete definicije. Ena pomembna lastnost je, da tabela, ki je v skladu z 1NF, ne sme vsebovati nobenih atributov z relacijsko vrednostjo (tj. vsi atributi bi morali imeti atomske vrednosti).

Kaj je 2NF?

2NF je druga običajna oblika, ki se uporablja v relacijskih zbirkah podatkov. Da bi bila tabela skladna z 2NF, bi morala biti skladna z 1NF in vsak atribut, ki ni del nobenega kandidatnega ključa (tj. neprime atributi), bi moral biti v celoti odvisen od katerega koli od kandidatnih ključev v tabeli.

Kaj je 3NF?

3NF je tretja običajna oblika, ki se uporablja pri normalizaciji relacijske baze podatkov. V skladu s Coddovo definicijo 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 pripada kandidatnemu ključu, bi moral biti neposredno odvisen na vsakem kandidatnem ključu te tabele. Leta 1982 je Carlo Zaniolo pripravil drugače izraženo definicijo za 3NF. Tabele, ki so skladne s 3NF, na splošno ne vsebujejo nepravilnosti, ki se pojavijo pri vstavljanju, brisanju ali posodabljanju zapisov v tabeli.

Kakšna je razlika med 1NF in 2NF ter 3NF?

1NF, 2NF in 3NF so običajne oblike, ki se uporabljajo v relacijskih bazah podatkov za zmanjšanje odvečnosti 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 pridobivanje tabele, ki je skladna z obrazcem 3NF, zahtevalo dekompozicijo tabele, ki je v 2NF. Podobno bo pridobivanje tabele, ki je skladna z 2NF, zahtevalo dekompozicijo tabele, ki je v 1NF. Če pa tabela, ki je skladna z 1NF, vsebuje možne ključe, ki so sestavljeni samo iz enega samega atributa (tj. nekompozitni kandidatni ključi), bi bila taka tabela samodejno skladna z 2NF. Dekompozicija tabel bo povzročila dodatne operacije združevanja (ali kartezične produkte) pri izvajanju poizvedb. To bo povečalo čas računanja. Po drugi strani pa bi imele tabele, ki so skladne z močnejšimi normalnimi oblikami, manj redundanc kot tabele, ki so skladne samo s šibkejšimi normalnimi oblikami.

Priporočena: