ozelot47 avatar

Datenbanken: Normalisierung

ozelot47

Published: 12 May 2020 › Updated: 12 May 2020Datenbanken: Normalisierung

Datenbanken: Normalisierung

Das Ziel einer Datenbank-Normalisierung besteht darin, dass man Attribute in mehreren Relationen so aufteilt, sodass eine Form entsteht, die keine vermeidbaren Redundanzen enthält. Dafür existieren insgesamt fünf Normalformen, wobei in der Praxis aber nur die ersten drei Normalformen angewendet werden. Die vierte und die fünfte Normalform rechtfertigen meistens den hohen Aufwand nicht den man aufbringen muss [1,2].
Im folgenden werden Beispiele zu den ersten drei Normalformen gezeigt.

Beispiel: "Unnormale" Form (0NF)

Als Beispiel haben wir hier eine Relation, die noch keine Normalform durchlaufen hat.

0NF.png
Abbildung 1: Eine einfache Relation

Die erste Normalform (1NF)

Die erste Normalform (1NF) ist dann gegeben, wenn alle Informationen elementar/atomar vorliegen. Das bedeutet, in jeder Spalte darf nur ein Wert stehen.

1NF.png
Abbildung 2: Nach der 1NF
Obere Relation vorher, untere Relation nachher

Die zweite Normalform (2NF)

In der zweiten Normalform wird überprüft, ob eine volle funktionale Abhängigkeit oder nur eine funktionale Abhängigkeit von Werten zu einer Teilmenge besteht.
Eine Relation befindet sich in der zweiten Normalform, wenn die erste Normalform durchlaufen wurde und wenn jedes Nichtschlüsselattribut von jedem Schlüsselkandidaten voll funktional abhängig ist.

2NF.png
Abbildung 3: Nach der 2NF
oberste Relation vorher, untere drei Relationen nachher

Da ein Name nicht eindeutig ist, wird jedem Kunden eine Kundennummer zugeordnet. Diese ist der Primärschlüssel der neuen Tabelle Kunde-Relation. Danach wird das gleiche mit den Artikeln durchgeführt.

Die dritte Normalform (3NF)

Eine Relation befindet sich genau dann in der dritten Normalform (3NF), wenn die zweite Normalform durchlaufen wurde und kein Nichtschlüsselattribut transitiv von einem Kandidatenschlüssel abhängt. Dadurch sollen Redundanzen vermieden werden.
Transitiv bedeutet hier, dass die abhängigen Spalten in eine weitere Tabelle ausgelagert werden, da sie nicht direkt vom Schlüsselkandidaten abhängen, sondern nur indirekt.

3NF.png
Abbildung 4: Nach der 3NF
oberste Relation vorher, untere zwei Relationen nachher

Quelle
[1] http://cir.dcs.uni-pannon.hu/cikkek/Database_Normalization.pdf
[2] https://www.researchgate.net/publication/297731569_The_Database_Normalization_Theory_and_the_Theory_of_Normalized_Systems_Finding_a_Common_Ground

Leave Datenbanken: Normalisierung to:

Written by

Wandern, Natur, Computerwissenschaften und Gameplays

Read more #deutsch posts


Best Posts From ozelot47

We have not curated any of ozelot47's posts yet. But you can encourage our curation team to review posts by visiting them regularly and by referring other readers. Because we give priority to frequently read content.

More Posts From ozelot47