Oskar Skibski, grupa nr 4, sala 2043
Bazy danych 2015/16
Laboratorium 7 (23.11.2015) - NF / Normalizacja
Normalizacja 3NF
Aby przeprowadzić normalizację relacji R z zależnościami F do trzeciej postaci normalnej należy:
- wyznaczyć pokrycie minimalne zbioru zależności F
- odrzucić zależności których zbiór atrybutów zawiera się w zbiorze atrybutów innych zależności
- dla każdej zależności X -> A stworzyć nową relację z atrybutami X i A
- jeżeli żadna relacja nie zawiera żadnego klucza R, należy dodać relację z atrybutami z klucza
Zadanie 1.
Przeprowadź normalizację do trzeciej postaci normalnej następujących relacji:
R = ABCDEFG
z zależnościami AB -> C, C -> A, BC -> D, ACD -> B, D -> EG, BE -> C, CG -> BD, CE -> AGE
R = ABCDEF
z zależnościami ABC -> DF, B -> E, CE -> D, F -> A, AD -> BF, CD -> E
Normalizacja BCNF
Aby przeprowadzić normalizację relacji R z zależnościami F do postaci normalnej Boyce'a-Codda należy:
- ze zbioru zależności wyrzucić zależności trywialne (lub trywialne atrybuty z prawej strony)
- wybrać zależność X -> Y naruszającą BCNF
- rozłożyć relację na dwie relację: z atrybutami X i Y oraz drugą - R bez Y; odpowiednio zrzutować zbiór zależności na obie relacje
- jeżeli któraś powstała relacja nie jest w BCNF zastosować dla niej rekurencyjnie ten algorytm
Zadanie 2.
Przeprowadź normalizację do postaci normalnej Boyce'a-Codda następujących relacji:
R = ABCDE
z zależnościami C -> BF, EB -> C, D -> A, E -> D
R = ABCDEF
z zależnościami D->A, B->E, CF->ABE, F->D, BF->C, C->D