130 likes | 442 Views
Računarstvo i informatika. IV godina. Pojam normalizacije baze podataka. Normalizacija baze podataka je proces svođenja baze podataka na najoptimalniju formu radi otklanjanja redundantnosti.
E N D
Računarstvo i informatika IV godina
Pojam normalizacije baze podataka • Normalizacija baze podataka je proces svođenja baze podataka na najoptimalniju formu radi otklanjanja redundantnosti. • Drugim rečima, sve entitete, atribute i relacije (tabele) je potrebno uprostiti do te mere da se ne ponavljaju podaci. • Na primer, ukoliko pravimo bazu podataka BIBLIOTEKA u tabeli sa knjigama bi se više puta pojavljivalo ime određenog pisca. S toga, optimalno je napraviti posebnu relaciju (tabelu) PISCI koja bi na neki način bila vezana za relaciju KNJIGE.
Prva normalna forma • Relacija se nalazi u prvoj normalnoj formi ako ne sadrži grupe podataka koje se ponavljaju, već se više puta ponavljaju isti podaci. • Na primer, posmatramo tabelu sa narudžbinama u nekoj prodavnici:
Prva normalna forma • Ono što se ponavlja u više redova tabele, a ima isti sadržaj, potrebno je izdvojiti u posebnu tabelu.
Prva normalna forma • Dobijamo tako dve tabele, kojima moramo dodeliti primarne ključeve da bismo ih na neki način povezali: K K K
Druga normalna forma • Tabela se nalazi u drugoj normalnoj formi ako svi njeni atributi, koji nisu ključ, potpuno zavise od primarnog ključa. • Naziv robe i cena potpuno zavise od šifre robe, ali ne i od broja narudžbenice. K K
Druga normalna forma • Pošto nisu potpuno funkcionalno zavisni od složenog ključa treba ih razdvojiti u dve posebne relacije (tabele). K K K
Treća normalna forma • Relacija se nalazi u trećoj normalnoj formi ako je već u drugoj normalnoj formi i ni jedan od atributa koji nisu kandidati za ključ nije prenosno zavisan od primalnog ključa. • Potrebno je izdvojiti podatke koji na prvi pogled zavise samo od primarnog ključa, ali u stvari zavise i od nekog drugog podatka u relaciji. • Podatak naziv kupca treba izdvojiti u posebnu tabelu. K
Treća normalna forma • Naziv kupca se izdvaja u posebnu tabelu jer ima posrednu zavisnost: • Broj narudžbenice zavisi od šifre kupca. (BN ŠK) • Šifra kupca zavisi od naziva kupca. (ŠK NK) • Sledi da broj narudžbenice zavisi od naziva kupca. (BN NK) K K
Baza porudžbine • Konačno, baza porudžbine će imati najminimalniju formu ako je izdeljena na sledeće tabele: K K K K K
Kreiranje baze podataka • U procesu kreiranja baze podataka portebno je ispoštovati neke uslove: • Analizirati potrebe: šta je potrebno napraviti. • Modeliranje podataka: formiranje šeme (dijagrama) koja prikazuje entitete, njihove atribute i veze. • Implementacija: fizičko kreiranje baze podataka pomoću nekog DBMS-a. • Testiranje. • Održavanje.
Kreiranje baze podataka Ime Telefon Godina Naslov • Primer baze podataka: Zvezde Film Glumi u Atribut Vlasnik Žanr Ime Veza između entitetsa Studio Dužina Entitet Adresa
Kreiranje baze podataka • Potrebno je voditi računa o sledećim stvarima: • Domen atributa definiše njegove dozvoljene vrednosti. • Atribut koji je primarni ključ ne sme imati NULL vrednost. • Vrednost spoljnog ključa mora biti jednaka nekoj vrednosti ključa sa kojim se uparuje ili ima vrednost NULL. • Atributi moraju biti prosti, tj. Ne mogu se dalje razlagati. • Redudantnost podataka – izbegavati dupliranje podataka, podaci se mogu dobiti iz nekih drugih tabela. • Normalne forme – postupak za otklanjanje redudantnosti. • Dve vrste ne smeju biti iste – primarni ključ ili kombinacija primarnih ključeva mora biti različita,