Grundlagenserie Business Intelligence

Business Intelligence (Teil 3): Datenmodellierung – Relationale und Multidimensionale Modelle

Zweite und Dritte Normalform

Die Definition der Zweiten Normalform lautet:

Eine Relation ist in der Zweiten Normalform, wenn sie in der Ersten Normalform ist und alle Nicht-Schlüsselattribute funktional vom gesamten Schlüssel abhängen.

Damit muss ausgeschlossen sein, dass bereits Schlüsselteile bestimmte Attribute der Relation identifizieren können. Somit ist aus jenen Attributen, die nur von einem Teil des zusammengesetzten Primärschlüssels abhängen, eine neue Tabelle zu erzeugen.

In der Reisekostentabelle sind die Attribute „Datum“, „Name“, „Vorname“, „Straße“, „PLZ“ und „Ort“ nur funktional abhängig vom Attribut „Rechnungsnummer“ und völlig unabhängig vom Attribut „Kostenart“.

Das Attribut „Einzelvergütung“ ist dagegen nur funktional abhängig von der „Kostenart“ und hat nichts mit der „Rechnungsnummer“ zu tun. Lediglich das Attribut „Anzahl“ ist vom zusammengesetzten Primärschlüssel voll funktional abhängig.

Datenfelder, die von einem Schlüsselkandidaten nicht vollständig funktional abhängig sind, werden in weiteren Tabellen untergebracht. Der Teil des Schlüsselkandidaten, von dem ein ausgelagertes Datenfeld funktional abhängig ist, wird Primärschlüssel der neuen Tabelle. Als Ergebnis erhalten wird die drei folgenden Tabellen.

Reise

Rechnungsnummer

Datum

Name

Vorname

Straße

PLZ

Ort

Positionen

Rechungsnummer

Kostenart

Anzahl

Kostenarten

Kostenart

Einzelvergütung

Die Definition der Dritten Normalform lautet:

Eine Relation ist in der Dritten Normalform, wenn Sie in der Zweiten Normalform ist und zusätzlich keine funktionalen Abhängigkeiten zwischen Nicht-Schlüsselattributen existieren.

Somit darf lediglich der Primärschlüssel der Relation die Attribute identifizieren. In der Tabelle „Reise“ sind die Attribute „Vorname“, „Straße“ und „PLZ“ abhängig vom Attribut „Name“, nicht vom Primärschlüssel. Außerdem ist „Ort“ abhängig von „PLZ“. Diese abhängigen Datenfelder werden in weitere Tabellen ausgelagert. Da ein Name nicht eindeutig ist, wird jedem Angestellten eine Personalnummer zugeordnet. Diese ist Primärschlüssel der neuen Tabelle „Personal“.

Die folgende Tabellen sind das Ergebnis des Dritten Normalisierungsschritts, der zugleich Endergebnis der gesamten Normalisierung ist.

„Endprodukt“: Das Ergebnis des Normalisierungsprozesses für die Reisekostentabelle (Quelle: HDM Stuttgart)
„Endprodukt“: Das Ergebnis des Normalisierungsprozesses für die Reisekostentabelle (Quelle: HDM Stuttgart)