2. Normalform
Es ist eine Regel in der Datenbanknormalisierung, die sicherstellt, dass alle nicht-schlüssel Attribute vollständig funktional abhängig vom gesamten Primärschlüssel sind.
Hier sind die Hauptpunkte der 2NF:
-
Vollständige Abhängigkeit: Ein Attribut ist vollständig funktional abhängig von einem Primärschlüssel, wenn es nicht nur von einem Teil des Schlüssels abhängt (bei zusammengesetzten Schlüsseln).
-
Keine partiellen Abhängigkeiten: Wenn ein Attribut nur von einem Teil des Primärschlüssels abhängt, verstößt die Tabelle gegen die 2NF. In solchen Fällen sollten die Attribute in separate Tabellen aufgeteilt werden.
Tabelle vor der Normalisierung (1NF):
StudentID | KursID | Kursname | Dozent |
---|---|---|---|
1 | 101 | Mathe | Herr Müller |
1 | 102 | Physik | Frau Schmidt |
2 | 101 | Mathe | Herr Müller |
Hier hängt der Kursname und der Dozent nur von KursID ab, nicht von StudentID. Diese Tabelle ist also nicht in der 2NF.
Tabelle nach der Normalisierung (2NF):
Tabelle: Studenten
StudentID | KursID |
---|---|
1 | 101 |
1 | 102 |
2 | 101 |
Tabelle: Kurse
KursID | Kursname | Dozent |
---|---|---|
101 | Mathe | Herr Müller |
102 | Physik | Frau Schmidt |
In diesem Beispiel sind nun alle nicht-schlüssel Attribute (Kursname und Dozent) nur von KursID abhängig, und die Tabellen sind somit in der 2NF.