2. Normalform

In der 2. Normalform gilt die 1. Normalform und jedes Attribut einer Tabelle hängt funktional vom Primärschlüssel ab - funktionale Abhängigkeit.

BestellID

KundeVorname

KundeNachname

Artikel

Lieferdatum

Lieferant

Lieferantenort

Lieferantenstraße

1001

Max

Mustermann

Laptop

2025-10-10

TechShop

Berlin

Hauptstraße 1

1001

Max

Mustermann

Maus

2025-10-10

TechShop

Berlin

Hauptstraße 1

1001

Max

Mustermann

Tastatur

2025-10-10

TechShop

Berlin

Hauptstraße 1

1002

Anna

Schmidt

Monitor

2025-10-12

TechShop

Berlin

Hauptstraße 1

1002

Anna

Schmidt

Kopfhörer

2025-10-12

TechShop

Berlin

Hauptstraße 1

1003

Peter

Müller

Drucker

2025-10-15

BüroBedarf

Hamburg

Hafenstraße 10

1003

Peter

Müller

Tinte

2025-10-15

BüroBedarf

Hamburg

Hafenstraße 10

Die Datenbank weist in der 1NF noch Probleme auf.

  • Lieferantenadresse hängt nicht direkt von der BestellID ab, sondern vom Lieferanten.

  • Wiederholungen von Einträgen (z. B. Kunde oder Lieferant)

Um eine Datenbank in die zweite Normalform zu überführen, teilt man eine Tabelle, die atomar vorliegt, in einzelne Tabellen auf und gibt jeder dieser neu entstandenen Tabellen einen Primärschlüssel.

Damit man nach der Aufteilung der Tabellen immer noch weiß, welche Datensätze zusammengehören, müssen sie durch zusätzlich vergebene Fremdschlüssel verbunden werden.

Kunden-Tabelle

Kunde_ID

KundeVorname

KundeNachname

Lieferanten_ID

1001

Max

Mustermann

1

1002

Anna

Schmidt

1

1003

Peter

Müller

2

Artikel-Tabelle

Artikel_ID

Artikel

1

Laptop

2

Maus

3

Tastatur

4

Monitor

5

Kopfhörer

6

Drucker

7

Tinte

Bestellungen-Tabelle

Bestell_ID

Artikel_ID

Kunden_ID

1

1

1

2

2

1

3

3

1

4

4

2

5

5

2

6

6

7

7

7

7

Lieferanten-Tabelle

Lieferanten_ID

Lieferant

Lieferantenort

Lieferantenstraße

1

TechShop

Berlin

Hauptstraße 1

2

BüroBedarf

Hamburg

Hafenstraße 10