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
