Normalisierung?

Das Thema Normalisierung bereitet vielen Teilnehmern Schwierigkeiten. Deshalb habe ich versucht verschiedene Erklärungsmodelle/Beispiele aufzunehmen.
alternative Erklärungsansatz für die erste und zweite Normalform (Ursprungsversion)

Weshalb Normalisieren wir?

Überführung komplexer Beziehungen innerhalb von Tabellen in einfache Beziehungen durch Aufteilung der Attribute einer Tabelle auf mehrere Tabellen.
Ziel sind stabile und flexible Datenstrukturen.

D.h.:
Komplexe Tabellen sollen durch eine Aufteilung in mehrere Tabellen entflechtet werden.
So das dabei stabile und flexible Strukturen entstehen und keine Anomalien mehr auftreten
(siehe Was sind Datenbanken? - Probleme)

Die Normalisierung erfolgt in mehreren Stufen:

Jede Stufe beinhaltete die vorangegangene d.h. ist eine DB in der 3 NF so ist sie auch automatisch in der 2NF,1Nf,0NF...

Relevant für uns sind nur die ersten vier (bis zur 3NF)


Was benötigen wir zum Normalisieren?

Schlüssel, Regeln, Gehirnschmalz

Folgendes Beispiel ( nach Helmut Jarosch " Datenbankentwurf") : Informationssystem über Kinofilme (z.B. IMDB)

Anforderungen: Konkret: Datenbank einer Produktionsfirma
In einer Datenbank sollen Informationen zu Filmen gespeichert werden.
Dabei ist es von Interesse von wem und in welchem Studio ein Film gedreht wurde.
Um den Regisseur bezahlen zu können ist seine Kontonummer erforderlich.
Weiterhin sollen alle am Film beteiligten Schauspieler mit ihrer momentanen Adresse gespeichert werden.

Nullte Normalform

Alle Ausprägungen aus der realen Welt (Der Film) werden abstrahiert und in Felder zerlegt (Name_des_Films) in einer Tabelle abgebildet.
Dabei werden alle Felder entfernt die errechnet werden können.
Film NullteNormalform

Erste Normalform

Definition

Eine Relation ist in der Ersten Normalform, wenn jeder Attributwert atomar ist.

Erklärung

Ein Attributwert ist atomar, wenn er nicht aus mehreren Werten zusammengesetzt ist. (Hilfe: Sobald Werte in einem Feld getrennt werden müssen, verstösst man gegen die 1NF!)

Abhilfe:
Attribute mit Nicht-atomaren-Attributwerten werden in mehrere Attribute aufgeteilt.
Diese Gruppe von Attributen wird aus der Tabelle entfernt und in einer eigenen Tabelle untergebracht.

Film Erste Normalform

Zweite Normalform

Definition

Eine Relation ist in der Zweiten Normalform, wenn sie in der Ersten Normalform ist und jedes Nicht-Schlüsselattribut von jedem Schlüsselkandidaten vollständig funktional abhängig ist.

Achtung

Erklärung

Ein Attribut das kein Schlüssel ist darf nicht nur von einem Teil des Primärschlüssels voll funktional abhängig sein sondern muss von beiden abhängen.
D.h. Sobald ein Attribut nur von einem Teil des Schlüssels vollständig abhängig ist verstößt dies gegen die zweite Normalform.

Abhilfe:
Datenfelder, die von einem zusammengesetzten Primarschlüssel 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.

Film Zweite Normalform

Begrifflichkeiten

Beziehung
Darunter versteht man die Beziehungen von Tabellen untereinander.

 
Was ist ein Schlüssel? Datenbank Tool für MySQL PhpMyAdmin


 

 
© 2001 by  tbee / Impressum last update at: 19.05. 2003 20:05:17
url: www.tbee.de/mysql/t2_normalisierung_alternative.php