Was bedeutet normalisierte Relationen?

...komplette Frage anzeigen

3 Antworten

Es geht bei dem Begriff um die Strategie, wie ein relationales Datenbankschema aufgebaut werden sollte, damit Redundanzen vermieden werden. Dabei werden die Attribute einer Entität in verschiedene Relationen (Tabellen) aufgeteilt, so wie es die Normalisierungsregeln vorschreiben.

Ein Beispiel:

Du möchtest Filme in einer Datenbank speichern, mit den Attributen Filmtitel, Schauspieler, Erscheinungsjahr und Regisseur. Laut 1. Normalenform bekommt jedes Attribut seine eigene Tabellenspalte. Danach kann man schauen, ob man nicht Spalten in verschiedene Tabellen auslagert. So könnte das Jahr 2010 öfter für verschiedene Filme vorkommen, es wäre also ausreichend, lediglich via Fremdschlüssel auf dieses Feld in einer neuen Tabelle zu verweisen. Das gilt ebenso für die anderen Felder.

Antwort bewerten Vielen Dank für Deine Bewertung


Das Beispiel von regex9 ist etwas unglücklich geraten, denn es ist daraus nicht ersichtlich, welchen Vorteil es bringt, gerade das Jahr auszulagern. Um trotzdem bei diesem Beispiel zu bleiben: Das Feld Schauspieler würde besser passen, da es im Film wohl mehr als einen Schauspieler gibt und man sonst den Satz mehrfach wiederholen müsste, um alle unterzubringen. Außerdem kann des selbe Schauspieler auch in anderen Filmen vorkommen. Noch deutlicher wäre die Wirkung, wenn neben dem Schauspieler selbst noch weitere Daten von ihm gespeichert würden wie Geschlecht, Nationalität. Da würde der Sinn des Auslagerns deutlicher sichtbar werden, wenn man diese beiden Felder jedesmal statt
einmal speichern müsste.

Es geht beim Auslagern darum, zum einen ein Feld mehrfach belegen zu können und zum anderen hierarchisch untergeordnete Daten (Geschlecht und Nationalität gehören zum
Schauspieler) nicht immer wiederholen zu müssen, wenn der Schauspieler genannt wird. Auch wenn man jedesmal, wenn der Schauspieler genannt wird, man auch das Geschlecht und die Nationalität wissen möchte, muss man deswegen diese Daten nicht jedesmal speichern. Es genügt, wenn diese Daten einmal irgendwo stehen. Die Datenbank kann bei Bedarf diese Daten sich beschaffen und so ausgeben, als ob sie jedesmal gespeichert worden wären. Das ist das Prinzip der normalisierten Relation.




Antwort bewerten Vielen Dank für Deine Bewertung

Relation ist ein Synonym für Beziehung.

Ich hoffe, ich konnte dir helfen; wenn du noch Fragen hast, kommentiere einfach.

LG Willibergi

Antwort bewerten Vielen Dank für Deine Bewertung

Was möchtest Du wissen?