Wieso Normalisierung
- Mit Hilfe der Normalisierung überprüfen Datenbankadministratoren den Tabellenentwurf hinsichtlich einer Anzahl bestimmter Regeln, die, wenn sie eingehalten werden, bewirken, dass eine relationale Datenbank möglichst effektiv funktioniert.
Ziele der Normalisierung
- Vermeidung von unerwünschten Anomalien (Fehlern) beim Einfügen, Löschen sowie Ändern von Datensätzen (Einfüge-, Lösch- und Änderungsanomalie)
- Vermeidung von überflüssigen und doppelten oder mehrfach vorkommenden Informationen (Redundanz) und trotzdem sind alle Informationen aus den Tabellen abrufbar
- bessere Übersichtlichkeit für Benutzer und Programmierer
2. Normalform – Normalisierung Regel 2
Eine Relation befindet sich in der zweiten Normalform, wenn
- sie in der ersten Normalform ist und
- jedes Nicht-Schlüssel-Attribut vom Primärschlüssel voll funktional abhängig ist.
Wie erkennt man, ob ein Nicht-Schlüssel-Attribut vom Primärschlüssel voll funktional abhängig ist? Wenn Attribute von einem Teil des Primärschlüssels eindeutig identifiziert werden, dann liegt die 2. Normalform vor!
Beispiel für eine Tabelle in der 1. Normalfor: Tabelle/Relation Teilnehmer mit erweiterten Attributen
SchülerNr | Name | Vorname | Geschlecht | Stufe | Klasse | AG | Wochentag | Uhrzeit | |
1 | Müller | Max | m | 8 | 8a | Chor | Donnerstag | 15.30 | |
1 | Müller | Max | m | 8 | 8a | Roboter | Montag | 14:30 | |
2 | Glas | Genoveva | w | 7 | 7b | Roboter | Montag | 14:30 | |
3 | Thaler | Tim | m | 8 | 8b | Roboter | Montag | 14:30 | |
3 | Thaler | Tim | m | 8 | 8b | Chor | Donnerstag | 15.30 | |
3 | Thaler | Tim | m | 8 | 8b | Schülerzeitung | Mittwoch | 16:00 | |
4 | Alt | Achim | m | 7 | 7a | Chor | Donnerstag | 15.30 | |
5 | Maier | Marie | w | 7 | 7c | Chor | Donnerstag | 15.30 | |
5 | Maier | Marie | w | 7 | 7c | Schülerzeitung | Mittwoch | 16:00 |
Aus dem Teilschlüssel SchülerNr lässt sich eindeutig auf Name, Vorname, Geschlecht, Stufe und Klasse schließen. | |
Aus dem Teilschlüssel AG lässt sich bereits eindeutig auf Wochentag und Uhrzeit schließen. Somit sind zwei neue TabellenSchüler und Arbeitsgemeinschaft zu erzeugen. |
Tabellen in der 2. Normalform
Relation: Schüler
SchülerNr | Name | Vorname | Geschlecht | Stufe | Klasse |
1 | Müller | Max | m | 8 | 8a |
2 | Glas | Genoveva | w | 7 | 7b |
3 | Thaler | Tim | m | 8 | 8b |
4 | Alt | Achim | m | 7 | 7a |
5 | Maier | Marie | w | 7 | 7c |
Relation: Arbeitsgemeinschaft
AG | Wochentag | Uhrzeit |
Chor | Montag | 14.30 |
Roboter | Dienstag | 15:30 |
Schülerzeitung | Mittwoch | 17:00 |