Druga normalna forma

S Vikipedije, slobodne enciklopedije

Druga normalna forma jeste normalna forma koja se koristi u postupku normalizaciji baze podataka. Druga normalna forma je izvedena iz prve normalne forme.[1][2] Definisao ju je Edgar Frank Kod.[3]

Parcijalna funkcijska zavisnost[uredi | uredi izvor]

Neka su X, Y i Z podskupovi relacije R. Ako za funkcijsku zavisnost X → Y postoji neki pravi podskup Z od X, za koji važi Z → Y, tada se kaže da je zavisnost X → Y parcijalna.[1]

Definicija[uredi | uredi izvor]

Za šemu relacije R se kaže da je u drugoj normalnoj formi, ako nad njome ne postoji nijedna funkcijska zavisnost po kojoj neki neključni atribut parcijalno zavisi od bilo kog kandidat ključa.[1][2]

Objašnjenje i primeri[uredi | uredi izvor]

Neka nam je uz šemu relacije dat i skup njenih funkcijskih zavisnosti. Kada se vrši provera da li je data relacija u drugoj normalnoj formi, tada se posmatraju sve njene funkcijske zavisnosti i traži se uslov iz definicije. Kada naiđemo na takvu funkcijsku zavisnost, tada se na osnovu pravila normalizacije vrši dekompozicija date tabele na manje.[1] Ovo znači da se teži ka potpunoj funkcijskoj zavisnosti, eliminišući bilo koje parcijalne zavisnosti u tabeli.[2]

Posmatrajmo sada sledeću tabelu (relaciju) i njen skup funkcionalnih zavisnosti ispod:[1]

  • AUTOR = (SifA, SifN, Ime, Koji)
  • F = {SifA,SifN → Ime,Koji; SifA → Ime}

Podrazumeva se da sa desne strane znaka za zavisnost, →, stoje i oni atributi sa leve, jer zavise od sami sebe. Zbog toga se oni ne pišu sa desne strane, nego podrazumevaju. Neka nam je poznat i kandidat-ključ ove relacije, SifA,SifN. Njega smo direktno mogli da uočimo iz skupa funkcijskih zavisnosti, jer od njega zavise svi atributi u tabeli, pa on jednoznačno određuje svaki red tabele. U skupu F, prva zavisnost očito nije problematična, jer se radi o zavisnosti atributa od kandidata-ključa. Zato, posmatrajmo zavisnost SifA → Ime. Kako je kandidat-ključ SifA,SifN, lako se uočava da je SifA njegov podskup, te se zaključuje da se radi o parcijalnoj zavisnosti. Na osnovu ovoga, vrši se dekompozicija na dve tabele - prvu sa atributima iz ove zavisnosti i drugu koja sadrži sve atribute sem onoga sa desne strane spomenute parcijalne zavisnosti. Proverom se zaključuje da smo dobili tabele u drugoj normalnoj formi:[1]

  • AUTOR1 = (SifA, Ime), F1 = {SifA → Ime}
  • AUTOR2 = (SifA, SifN, Koji), F2 = {SifA,SifN → Koji}

Dakle, uklonjena je neželjena parcijalna funkcijska zavisnost.[1]

Vidi još[uredi | uredi izvor]

Reference[uredi | uredi izvor]

  1. ^ a b v g d đ e Blagojević, Vladimir (2006). Relacione baze podataka I. Beograd: ICNT. str. 337—338. ISBN 978-86-86531-07-0. 
  2. ^ a b v Elmasri, Ramez; Shamkant B., Navathe. Fundamentals of Database Systems (PDF) (6th izd.). Addison-Wesley. str. 523. ISBN 978-0-136-08620-8. Arhivirano iz originala (PDF) 11. 01. 2018. g. Pristupljeno 11. 1. 2018. 
  3. ^ Codd, E.F. "Further Normalization of the Data Base Relational Model." (Presented at Courant Computer Science Symposia Series 6, "Data Base Systems," New York City, May 24th-25th, 1971.) IBM Research Report RJ909 (August 31st, 1971). Republished in Randall J. Rustin (ed.), Data Base Systems: Courant Computer Science Symposia Series 6. Prentice-Hall, 1972.

Literatura[uredi | uredi izvor]

Spoljašnje veze[uredi | uredi izvor]