Razlika između 1NF i 2NF i 3NF

Razlika između 1NF i 2NF i 3NF
Razlika između 1NF i 2NF i 3NF

Video: Razlika između 1NF i 2NF i 3NF

Video: Razlika između 1NF i 2NF i 3NF
Video: Difference between 3NF and BCNF, De-normalization 2024, Juli
Anonim

1NF vs 2NF vs 3NF

Normalizacija je proces koji se provodi kako bi se smanjile suvišnosti koje su prisutne u podacima u relacijskim bazama podataka. Ovaj proces će uglavnom podijeliti velike tablice na manje tablice s manje redundansi. Ove manje tablice će biti povezane jedna s drugom kroz dobro definirane relacije. U dobro normaliziranoj bazi podataka, svaka izmjena ili modifikacija podataka će zahtijevati izmjenu samo jedne tabele. Prvu normalnu formu (1NF), drugu normalnu formu (2NF) i treću normalnu formu (3NF) uveo je Edgar F. Codd, koji je ujedno i izumitelj relacionog modela i koncepta normalizacije.

Šta je 1NF?

1NF je prvi normalni oblik, koji pruža minimalni skup zahtjeva za normalizaciju relacijske baze podataka. Tabela koja je u skladu sa 1NF osigurava da zapravo predstavlja relaciju (tj. ne sadrži zapise koji se ponavljaju), ali ne postoji univerzalno prihvaćena definicija za 1NF. Jedno važno svojstvo je da tabela koja je u skladu sa 1NF ne može sadržavati nikakve atribute koji imaju relacijske vrijednosti (tj. svi atributi trebaju imati atomske vrijednosti).

Šta je 2NF?

2NF je drugi normalni oblik koji se koristi u relacionim bazama podataka. Da bi tabela bila usklađena sa 2NF, ona bi trebala biti usklađena sa 1NF i svaki atribut koji nije dio nijednog ključa kandidata (tj. atributi koji nisu primarni) treba u potpunosti ovisiti o bilo kojem od ključeva kandidata u tabeli.

Šta je 3NF?

3NF je treći normalni oblik koji se koristi u normalizaciji relacijske baze podataka. Prema Codd-ovoj definiciji, za tablicu se kaže da je u 3NF, ako i samo ako je ta tablica u drugom normalnom obliku (2NF), a svaki atribut u tabeli koji ne pripada ključu kandidata treba direktno zavisiti na svakom ključu kandidata te tabele. Godine 1982. Carlo Zaniolo je proizveo drugačije izraženu definiciju za 3NF. Tabele koje su u skladu sa 3NF generalno ne sadrže anomalije koje se javljaju prilikom umetanja, brisanja ili ažuriranja zapisa u tabeli.

Koja je razlika između 1NF i 2NF i 3NF?

1NF, 2NF i 3NF su normalni oblici koji se koriste u relacionim bazama podataka za minimiziranje redundanse u tabelama. 3NF se smatra jačim normalnim oblikom od 2NF, a smatra se jačim normalnim oblikom od 1NF. Stoga će općenito, dobivanje tablice koja je u skladu sa 3NF formom zahtijevati dekomponiranje tablice koja je u 2NF. Slično, dobijanje tabele koja je u skladu sa 2NF će zahtevati dekomponovanje tabele koja je u 1NF. Međutim, ako tabela koja je u skladu s 1NF sadrži ključeve kandidata koji su sastavljeni samo od jednog atributa (tj. nekompozitni kandidatski ključevi), takva tablica bi automatski bila u skladu s 2NF. Dekompozicija tabela će rezultirati dodatnim operacijama spajanja (ili kartezijanskim proizvodima) prilikom izvršavanja upita. Ovo će povećati vrijeme računanja. S druge strane, tabele koje su u skladu sa jačim normalnim oblicima bi imale manje zaliha od tabela koje su usklađene samo sa slabijim normalnim oblicima.

Preporučuje se: