Datenbanken

Beziehungen modellieren

Primärschlüssel

Um Datensätze verknüpfen zu können müssen sie eindeutig identifizierbar sein.
Ein Kombination von Attributen, anhand dessen man einen Datensatz eindeutig finden kann, wird Primärschlüssel oder "minimaler Schlüssel" genannt.

Beispiel: Filmdatenbank

(Titel, Regisseur, Erscheinungsjahr) ?
(Titel, Erscheinungsjahr) ?
(Titel, Regisseur) ?
(Regisseur, Erscheinungsjahr) ?

Oft schwer entscheidbar, ob eine Attributkombination wirklich immer einen Primärschlüssel darstellt.

Surrogatschlüssel

Häufig: Datensätze erhalten fortlaufende Nummer
→ künstlicher Schlüssel oder Surrogatschlüssel.

Datensätze eindeutig indentifizierbar machen durch Primärschlüssel

In bezugnehmenden Tabellen Fremdschlüssel festlegen, die auf die Primärschlüssel "zeigen"

Darstellung in Tabellen und im ER-Diagramm

Primärschlüssel werden unterstrichen - alle Attribute, die den Primärschlüssel ausmachen.

Fremdschlüssel werden in ER Diagrammen nicht als Attribute eingezeichnet.
Die Beziehung wird dort durch die Raute hergestellt.

Was passiert, wenn der Klassenlehrer pensioniert wird im Datensatz des Schülers?

Allgemein: Wie werden Inkonsistenzen vermieden, wenn ein Datensatz mit einem Primärschlüssel aus der DB gelöscht wird?

Was passiert, wenn der Klassenlehrer pensioniert wird im Datensatz des Schülers?

Allgemein: Wie werden Inkonsistenzen vermieden, wenn ein Datensatz mit einem Primärschlüssel aus der DB gelöscht wird?


Das DBMS kann das managen - "Constraints"

oder


Das Programm, mit dem man auf das DMBS zugreift kann das managen