Professional Documents
Culture Documents
Lekcija Br. 16 Boyce Coddova Normalna Forma
Lekcija Br. 16 Boyce Coddova Normalna Forma
Definicija:
(1) šema relacije R(A1, A2, ..., An) je u Boyce-Coddovoj normalnoj formi (BCNF) ako i samo
ako je u 3NF iako za svaki par X i Y disjunktnih nepraznih podskupova skupa svih atributa
postoji funkcionalna zavisnost X -> Y koja povlači postojanje funkcionalne zavisnosti X - Ai
za svako i=1, 2, ..., n.
Ova definicija kaže da kad god u relaciji postoji netrivijalna funkcionalna zavisnost X -> Y
između disjunktnih nepraznih skupova nekih atributa, onda domen te zavisnosti sadrži ključ
relacije (2). Šema relacije R je u Boyce-Codd-ovoj normalnoj formi (BCNF) ako uvek kada je
u R važi X -> A onda je X primarni ključ relacije R.
BCNF normalizacija
Ako šema relacije R nije u BCNF onda postoji takva dekompozicija relacije R u skup relacija
koje su sve u BCNF, a operacijom prirodnog spoja se iz njih može ponovo dobiti relacija R.
Šemu relacije R koja nije u BCNF predstavićemo u formi R(X, Y, Z) gde je presjek skupova
atributa X ∩ Y = 0, X -> Y i X -> Z.
Šema relacije se djeli na dvije relacije R1(X, Y) i R2(X, Z).
Primer:
Šema relacije R(A1, A2, A3) gde postoje funkcionalne zavisnosti:
f1: A1,A2 -> A3
f2: A3 -> A1
je u 3NF, jer jedini sporedni atribut A3 ne zavisi tranzitivno od jednog ključa (A1, A2). Ova
relacija nije u
BCNF jer A3 iz f2 ne sadrži s lijeve strane primarni ključ.
Za BCNF normalizaciju djelimo skup atributa R(A1, A2, A3) na tri podskupa:
X=(A3), Y(A1), Z=(A2) koji ispunjavaju tražene uslove
A3 -> A1, A3 -> A2
šema relacije R se razlaže na dvije šeme relacije u BCNF:
R1(A3, A1) i R2(A3, A2).
Primer:
Data je šema relacije R(A1, A2, A3, A4) gde postoje sljedeće funkcionalne zavisnosti :
f1: A1 -> A2, A3, A4
f2: A2, A3 -> A1, A4
f3: A4 -> A2
A1 je primarni ključ, a {A2, A3} je kandidat za ključ. R je u 3NF ali nije u BCNF zbog f3
(A4 nije primarni ključ relacije R, ali je A2 ključni atribut, te f3 zadovoljava uslov (b) iz
definicije (3) za 3NF). R se može rastaviti na dve relacije:
R1(A1, A4, A3) i R2(A4, A2)
Primjer:
Data je šema relacije PACIJENT-POSJETA(PACIJENT, KLINIKA, DOKTOR). Nad
atributima ove relacije postoje sljedeće funkcionalne zavisnosti:
f1: {PACIJENT, KLINIKA} -> DOKTOR
f2: DOKTOR -> KLINIKA
Pitanja:
1. Dokazati da je relacija PACIJENT-POSJETA u 3NF, ali da nije u BCNF.
2. Izvršiti BCNF normalizaciju.
3. Pokazati anomalije koje se javljaju pri obradi ove relacije.
Odgovori:
1. Šema relacije PACIJENT-POSJETA je u 3NF jer f1 ispunjava uslov (a) iz definicije za 3NF,
a f2 takođe ispunjava uslov pomenute definicije. Kako u definiciji BCNF ne postoji dati
uslov, to ova relacija nije u BCNF.