Prozess der Normalisierung
Um unnötige Redundanzen zu reduzieren und Anomalien zu vermeiden, werden Relationen schrittweise normalisiert. Im Unterricht betrachten wir die ersten drei Normalformen.
In unserem Fall liegt nur die Relation Lernangebotsübersicht vor:
| SNr |
Name |
Vorname |
Klasse |
Klassenlehrer |
LANr |
Beschreibung |
Stunden |
| 1 |
Jürgens |
Ina |
11a |
Lempel |
2 |
Tanz |
12 |
| 2 |
Schmidt |
Tom |
12a |
Breier |
2, 3 |
Tanz, Chor |
22, 8 |
| 3 |
Jäger |
Franz |
11a |
Lempel |
1, 2, 3 |
Elektronik, Tanz, Chor |
15, 12, 2 |
| 4 |
Olsen |
Ina |
11b |
Sommer |
2 |
Tanz |
5 |
| 5 |
Jürgens |
Paula |
12a |
Breier |
4 |
Töpfern |
23 |
1. Normalform
Eine Relation befindet sich in der ersten Normalform (1. NF), wenn jeder Attributwert atomar ist.
Ein Attributwert ist atomar, wenn er im verwendeten Datenmodell als einzelner, nicht weiter zu zerlegender Wert behandelt wird. Mehrere Werte in einem Attribut erschweren zudem die eindeutige Zuordnung zusammengehöriger Angaben.
Mehrfachwerte werden so aufgelöst, dass jedes Tabellenfeld nur noch einen einzelnen Wert enthält. Dazu können beispielsweise zusätzliche Zeilen gebildet oder die betreffenden Daten in eine eigene Relation ausgelagert werden.
Relation Lernangebotsübersicht kann durch Hinzufügen von Zeilen (oder durch Auslagern der nichtatomaren Attribute mit dem vorhandenen Schlüssel) in eine neue Relation in die erste Normalform überführt werden:
| SNr |
Name |
Vorname |
Klasse |
Klassenlehrer |
LANr |
Beschreibung |
Stunden |
| 1 |
Jürgens |
Ina |
11a |
Lempel |
2 |
Tanz |
12 |
| 2 |
Schmidt |
Tom |
12a |
Breier |
2 |
Tanz |
22 |
| 2 |
Schmidt |
Tom |
12a |
Breier |
3 |
Chor |
8 |
| 3 |
Jäger |
Franz |
11a |
Lempel |
1 |
Elektronik |
15 |
| 3 |
Jäger |
Franz |
11a |
Lempel |
2 |
Tanz |
12 |
| 3 |
Jäger |
Franz |
11a |
Lempel |
3 |
Chor |
2 |
| 4 |
Olsen |
Ina |
11b |
Sommer |
2 |
Tanz |
5 |
| 5 |
Jürgens |
Paula |
12a |
Breier |
4 |
Töpfern |
23 |
Beobachtungen:
-
- Die Herstellung der 1. Normalform beseitigt die Mehrfachwerte, kann aber zunächst zu zusätzlichen Redundanzen führen.
- Nach dem Aufteilen ist
SNr allein nicht mehr als Primärschlüssel geeignet, da eine Schülernummer mehrfach vorkommen kann. Die Kombination aus SNr und LANr kann die Zeilen eindeutig identifizieren und bildet daher einen zusammengesetzten Schlüssel.
2. Normalform
Eine Relation befindet sich in der zweiten Normalform, falls
-
- die Relation in der ersten Normalform ist und
- jedes Nichtschlüsselattribut voll funktional vom gesamten Primärschlüssel abhängig ist.
Regel zum Prüfen der zweiten Bedingung:
Voll funktional abhängig bedeutet: Kein Nichtschlüsselattribut darf bereits von einem echten Teil des zusammengesetzten Schlüssels abhängen. Hängt mindestens ein Nichtschlüsselattribut funktional nur von einem Teil des zusammengesetzten Schlüssels ab, liegt keine 2. Normalform vor.
Schrittfolge zur Herstellung der zweiten Normalform:
-
- Festlegen/Feststellen des Primärschlüssel
→ Falls dieser nur aus einem Attribut besteht, so liegt 2. NF vor.
- Untersuchen, ob aus Teilschlüsselattributen bereits weitere Attribute folgen.
→ Falls dies nicht der Fall ist, so liegt die 2. NF vor.
→ Falls dies der Fall ist, so Schritt 3.
- Für jeden Teilschlüssel, von dem Nichtschlüsselattribute funktional abhängen, wird eine eigene Relation gebildet. Der Teilschlüssel wird Primärschlüssel dieser neuen Relation.
- Löschen der ausgelagerten Nichtschlüsselattribute in der Ausgangsrelation.
- Wiederholen des Vorgangs ab Schritt 2, bis alle Nichtschlüsselattribute vom gesamten Schlüssel funktional abhängig sind.
In der Relation Lernangebotsübersicht ist die Attributkombination SNr und LANr der neue Primärschlüssel. Aus dem Teilschlüssel LANr lässt sich bereits eindeutig auf das Attribut "Beschreibung" schließen. Aus SNr lässt sich eindeutig auf die Attribute "Name", "Vorname", "Klasse" und" Klassenlehrer" schließen. Somit sind zwei neue Relationsschemen Lernangebot und Schüler zu erzeugen und das verbleibende Schema Lernangebotsübersicht umzubenennen und so zu überarbeiten, dass die Attribute "Beschreibung", "Name", "Vorname", "Klasse" und "Klassenlehrer" gelöscht werden. Das Attribut Stunden bleibt in der Relation Teilnahme, da sein Wert erst durch die Kombination aus Schüler und Lernangebot bestimmt wird.

| Relation Lernangebot |
Relation Schüler |
Relation Teilnahme |
| LANr |
Beschreibung |
| 1 |
Elektronik |
| 2 |
Tanz |
| 3 |
Chor |
| 4 |
Töpfern |
|
| SNr |
Name |
Vorname |
Klasse |
Klassenlehrer |
| 1 |
Jürgens |
Ina |
11a |
Lempel |
| 2 |
Schmidt |
Tom |
12a |
Breier |
| 3 |
Jäger |
Franz |
11a |
Lempel |
| 4 |
Olsen |
Ina |
11b |
Sommer |
| 5 |
Jürgens |
Paula |
12a |
Breier |
|
| ↑SNr |
↑LANr |
Stunden |
| 1 |
2 |
12 |
| 2 |
2 |
22 |
| 2 |
3 |
8 |
| 3 |
1 |
15 |
| 3 |
2 |
12 |
| 3 |
3 |
2 |
| 4 |
2 |
5 |
| 5 |
4 |
23 |
|
Beobachtung: Die Beschreibung eines Lernangebots wird nun nur noch einmal gespeichert. Ebenso werden die Stammdaten eines Schülers nicht mehr für jedes belegte Lernangebot wiederholt.
3. Normalform
Eine Relation befindet sich in der dritten Normalform, falls
-
- die Relation in der zweiten Normalform ist und
- kein Nichtschlüsselattribut transitiv vom Primärschlüssel abhängt.
Eine transitive Abhängigkeit liegt beispielsweise vor, wenn ein Nichtschlüsselattribut ein anderes Nichtschlüsselattribut bestimmt.
Regel zum Prüfen der zweiten Bedingung:
Hängt ein Nichtschlüsselattribut von einem anderen Nichtschlüsselattribut ab und dadurch nur transitiv vom Primärschlüssel, liegt keine 3. NF vor!
Schrittfolge zur Herstellung der dritten Normalform:
-
- Untersuchung, ob aus Nichtschlüsselattributen andere Nichtschlüsselattribute folgen.
→ Falls dies nicht der Fall ist, so liegt bereits die 3. NF vor.
→ Falls dies der Fall ist, so Schritt 2.
- Bilden einer neuen Relation aus dem bestimmenden Nichtschlüsselattribut und den von ihm funktional abhängigen Attributen. Das bestimmende Attribut wird Primärschlüssel der neuen Relation.
- Löschen der ausgelagerten Nichtschlüsselattribute mit Ausnahme des Attributes, das in der neuen Relation Primärschlüssel ist.
- Wiederholen des Vorgangs ab Schritt 1, bis keine Abhängigkeiten mehr bestehen.
In den Relationen Teilnahme und Lernangebot kann keine transitive Abhängigkeit zwischen Nichtschlüsselattributen auftreten, da jeweils nur ein Nichtschlüsselattribut vorhanden ist. Beide Relationen befinden sich daher bereits in der 3. NF. In der Relation Schüler folgt aus dem Nichtschlüsselattribut "Klasse" jedoch der "Klassenlehrer". Somit ist eine neue Relation Klassenübersicht mit den Attributen "Klasse" (Primärschlüssel) und "Klassenlehrer" zu erzeugen und das verbleibende Schema Schüler so zu überarbeiten, dass das Attribut "Klassenlehrer" gelöscht wird.

| Relation Lernangebot |
Relation Schüler |
Relation Teilnahme |
Relation Klassenübersicht |
| LANr |
Beschreibung |
| 1 |
Elektronik |
| 2 |
Tanz |
| 3 |
Chor |
| 4 |
Töpfern |
|
| SNr |
Name |
Vorname |
↑Klasse |
| 1 |
Jürgens |
Ina |
11a |
| 2 |
Schmidt |
Tom |
12a |
| 3 |
Jäger |
Franz |
11a |
| 4 |
Olsen |
Ina |
11b |
| 5 |
Jürgens |
Paula |
12a |
|
| ↑SNr |
↑LANr |
Stunden |
| 1 |
2 |
12 |
| 2 |
2 |
22 |
| 2 |
3 |
8 |
| 3 |
1 |
15 |
| 3 |
2 |
12 |
| 3 |
3 |
2 |
| 4 |
2 |
5 |
| 5 |
4 |
23 |
|
| Klasse |
Klassenlehrer |
| 11a |
Lempel |
| 11b |
Sommer |
| 12a |
Breier |
|