Allgemein dient die Normalisierung der Verhinderung von Datenredundanzen.


Folgende 3 Normalformen gibt es:

Die Erste Normalform (1NF) ist dann erfüllt, wenn alle Informationen in einer Tabelle atomar vorliegen.

Die Zweite Normalform (2NF) liegt dann vor, wenn die Tabelle in der ersten Normalform vorliegt und jedes Nichtschlüsselattribut von jedem Schlüsselkandidaten voll funktional abhängig ist.

Die Dritte Normalform (3NF) gilt als erfüllt, wenn er sich bereits in der zweiten Normalform (2NF) befindet und kein Nichtschlüsselattribut transitiv von einem Kandidatenschlüssel abhängt.

Die ersten drei Normalformen Ablauf von 1. bis 3. Normalform mit jeweiligem Zweck 1. Normalform (1NF) Nur atomare Werte, keine Wiederholgruppen 2. Normalform (2NF) Keine partielle Abhängigkeit vom Schlüssel 3. Normalform (3NF) Keine transitive Abhängigkeit von Nicht-Schlüsseln

1. Normalform (1NF) – atomare Werte

Jedes Feld darf nur einen Wert enthalten, keine Listen oder Wiederholgruppen.
❌ Schlecht: Ein Feld "Telefonnummern" mit "0301234, 0305678"
✅ Gut: Jede Telefonnummer bekommt eine eigene Zeile

2. Normalform (2NF) – volle funktionale Abhängigkeit

Gilt nur bei zusammengesetzten Primärschlüsseln (z. B. Bestell-Nr + Produkt-Nr). Jedes Nicht-Schlüsselfeld muss vom gesamten Schlüssel abhängen – nicht nur von einem Teil davon.
❌ Schlecht: In einer Tabelle mit Schlüssel (Bestell-Nr, Produkt-Nr) hängt "Produktname" nur von Produkt-Nr ab → partielle Abhängigkeit
✅ Gut: "Produktname" wandert in eine eigene Produkt-Tabelle

3. Normalform (3NF) – keine transitive Abhängigkeit

Ein Nicht-Schlüsselfeld darf nicht von einem anderen Nicht-Schlüsselfeld abhängen, sondern nur direkt vom Schlüssel.
❌ Schlecht: Tabelle "Mitarbeiter" mit Schlüssel Mitarbeiter-Nr, aber "Abteilungsname" hängt von "Abteilungs-Nr" ab (die selbst nur ein Nicht-Schlüsselfeld ist)
✅ Gut: Abteilungsdaten kommen in eine eigene Abteilungs-Tabelle