Normalisierung I Lehr- und Forschungseinheit Datenbanken und Informationssysteme 1 Ziele Formale Ermittlung von Schlüsselkandidaten Funktionale Abhängigkeiten Normalformen Lehr- und Forschungseinheit Datenbanken und Informationssysteme 2
Gute und Schlechte Relationenschemata Prof Vorlesung PersNr Name Rang Raum VorlNr Titel SWS 2125 Sokrates C4 226 5041 Ethik 4 2125 Sokrates C4 226 5049 Mäeutik 2 2125 Sokrates C4 226 4052 Logik 4 2132 Popper C3 52 5259 DB 2 2137 Kant C4 7 4630 Kritiken 4 Updateanomalien Einfügeanomalien Löschanomalien Lehr- und Forschungseinheit Datenbanken und Informationssysteme 3 Definition Schlüssel Lehr- und Forschungseinheit Datenbanken und Informationssysteme 4
Schlüssel Prof Vorlesung PersNr Name Rang Raum VorlNr Titel SWS 2125 Sokrates C4 226 5041 Ethik 4 2125 Sokrates C4 226 5049 Mäeutik 2 2125 Sokrates C4 226 4052 Logik 4 2132 Popper C3 52 5259 DB 2 2137 Kant C4 7 4630 Kritiken 4 Lehr- und Forschungseinheit Datenbanken und Informationssysteme 5 Funktionale Abhängigkeiten Lehr- und Forschungseinheit Datenbanken und Informationssysteme 6
Funktionale Abhängigkeiten Prof Vorlesung PersNr Name Rang Raum VorlNr Titel SWS 2125 Sokrates C4 226 5041 Ethik 4 2125 Sokrates C4 226 5049 Mäeutik 2 2125 Sokrates C4 226 4052 Logik 4 2132 Popper C3 52 5259 DB 2 2137 Kant C4 7 4630 Kritiken 4 Lehr- und Forschungseinheit Datenbanken und Informationssysteme 7 Normalformen 1.NF Alle Atribute sind atomar. 2.NF 1.NF + Kein Nicht-Schlüssel-Attribut darf von einer echten Teilmenge des Schlüsselkandidaten abhängen. 3.NF 1.NF + Alle Nicht-Schlüssel-Attribute dürfen nur direkt von einem (oder mehreren) Schlüsselkandiaten abhängen. BCNF 1.NF + Alle Attribute dürfen nur direkt von einem (oder mehreren) Schlüsselkandiaten abhängen. Lehr- und Forschungseinheit Datenbanken und Informationssysteme 8
2. Normalform 1.NF + Kein Nicht-Schlüssel-Attribut darf von einer echten Teilmenge des Schlüsselkandidaten abhängen. Intuitiv verletzt ein Relationenschema die zweite Normalform, wenn in der Relation Informationen über mehr als ein einziges Konzept modelliert werden. Prof Vorlesung PersNr Name Rang Raum VorlNr Titel SWS 2125 Sokrates C4 226 5041 Ethik 4 2125 Sokrates C4 226 5049 Mäeutik 2 2125 Sokrates C4 226 4052 Logik 4 2132 Popper C3 52 5259 DB 2 2137 Kant C4 7 4630 Kritiken 4 Lehr- und Forschungseinheit Datenbanken und Informationssysteme 9 3. Normalform 1.NF + Alle Nicht-Schlüssel-Attribute dürfen nur direkt von einem (oder mehreren) Schlüsselkandiaten abhängen. Verletzt, wenn ein Nichtschlüssel-Attribut einen Fakt einer Attributmenge darstellt, die keinen Schlüssel bildet Prof Adresse PersNr Name Rang Raum Straße Ort PLZ BLand Lehr- und Forschungseinheit Datenbanken und Informationssysteme 10
BCNF 1.NF + Alle Attribute dürfen nur direkt von einem (oder mehreren) Schlüsselkandiaten abhängen. Städte Ort BLand Ministerpräsident EW fd 3 fd 2 fd 1 Lehr- und Forschungseinheit Datenbanken und Informationssysteme 11 Normalisierung Lehr- und Forschungseinheit Datenbanken und Informationssysteme 12
Bestimmen von Normalformen Lehr- und Forschungseinheit Datenbanken und Informationssysteme 13 Armstrom-Kalkül Lehr- und Forschungseinheit Datenbanken und Informationssysteme 14
Normalisierung: Algorithmen (I) Beispiel: (1) R = (A, B, C, D, E) FD {(A, B C); (B D); (D E)} Y= {A,B} Mit (A, B C) und (B D) => Y={A,B,C,D} Mit (D E) => Y={A,B,C,D,E} Lehr- und Forschungseinheit Datenbanken und Informationssysteme 15 Normalisierung: Algorithmen (II) Lehr- und Forschungseinheit Datenbanken und Informationssysteme 16
Beispiele Schlüssel bestimmen und Normalform ermitteln (1) R(A,B,C,D,E,F) FD {(A,B C,D,E,F) (A D) (E F)} (2) R(A,B,C,D,E,F) FD {(A,B C,D,E,F) (A D) (E F) (D B)} (3) R(A,B,C) FD beliebig (4) R(A,B,C,B,C) Lehr- und Forschungseinheit Datenbanken und Informationssysteme 17 Beispiele Schlüssel bestimmen und Normalform ermitteln (5) R(A,B,C,D,E) FD {(A,B,C D,E) (B,C,D A,E)} (6) R(A,B,C,D,E) FD {(A,B,C D,E) (B,C,D A,E) (C D)} (7) R(A,B,C,D,E) FD {(A,B,C D,E) (B,C,D A,E) (D E)} (8) R(A,B,C,D,E,F) FD {(A,B C,D,E,F) (E F)} Lehr- und Forschungseinheit Datenbanken und Informationssysteme 18
Beispiele Schlüssel bestimmen und Normalform ermitteln (9) R(A,B,C,D,E,F) FD {(A,B C) (C B)} (10) R(A,B,C) (11) R(A,B,C,D,E) FD {(A,B,C D,E) (D C) (D E)} Lehr- und Forschungseinheit Datenbanken und Informationssysteme 19 Ziele Formale Ermittlung von Schlüsselkandidaten Funktionale Abhängigkeiten Normalformen Lehr- und Forschungseinheit Datenbanken und Informationssysteme 20