Svodjenje modela na treću normalnu formu
Svođenje modela na treću normalnu formu
Ako pogledamo malo bolje tabelu “KORISNIK” iz primera za drugu normalnu formu, videćemo da iako ispunjava i prvu i drugu normalnu formu, atribut “ZIVI” nije direktno zavistan od ID-a korisnika (primarnog ključa). Da bi postigli treću normalnu formu, taj podatak mora da se odvoji u zasebnu tabelu. Zašto? Ako uzmemo na primer da “mali zikica” napusti forum, te se slogovi koji njega definišu obrišu, nestaće trag o “BIH” (anomalija pri brisanju) ili ako “Srbija” ponovo promeni ime u “Republika Beograd sa okolinom”, to ime moramo promeniti na više od jednog mesta (anomalija pri promeni). Razlaganje na treću normalnu formu zahteva da podatak o “ZIVI” prebacimo u zaseban entitet.
TABELA: DRZAVA
DRZAVA_ID: 1
DRZAVA_IME: SrbijaDRZAVA_ID: 2
DRZAVA_ID: BIH
TABELA: KORISNIK
KORISNIK_ID: 1
KORISNIK_IME: pera peric
DRZAVA_ID: 1KORISNIK_ID: 2
KORISNIK_IME: mika mikic
DRZAVA_ID: 1KORISNIK_ID: 3
KORISNIK_IME: zikica zikic
DRZAVA_ID: 1KORISNIK_ID: 4
KORISNIK_IME: mali perica
DRZAVA_ID: 1KORISNIK_ID: 5
KORISNIK_IME: mali zikica
DRZAVA_ID: 2

Treća Normalna Forma



One Response to “Svodjenje modela na treću normalnu formu”
MySQL » Modeliranje baze podataka - Normalizacija - May 6, 2009
[...] 3NF: Treća normalna forma [...]
Leave a Reply