Beispiele zum ER-Modell
-
Primärschlüssel im Postleitzahlenverzeichnis: Die Postleitzahlen sind eindeutig,
Städte werden oft durch Zusätze eindeutig identifiziert, z.B. "Frankfurt/Oder".
Relationenschemata:
- Postleitzahl{Nummer}
- Ort{Name, Zusatz}
- identifiziert{Nummer, Name, Zusatz}
-
Für Schüler (wie Personen allgemein) sind als Primärschlüssel am besten (Kenn-)
Zahlen geeignet. Demzufolge werden auch die Zeugnisse zusätzlich durchnummeriert.
Relationenschemata:
- Schüler{ID, Nachname, Vorname}
- Zeugnis{ID, Mitarbeit, Verhalten, Fachnoten}
- erhält {Schüler.ID, Zeugnis.ID}
-
Die Digitalfotos erhalten am einfachsten ebenfalls Nummern als Primärschlüssel,
ein Stichwort "spricht für sich", verwendet also das Wort selbst als eindeutige
Bezeichnung.
Relationenschemata:
- Foto{ID, Datum, Auflösung}
- Stichwort{Bezeichnung}
- gehört zu{Foto.ID,Bezeichnung}
-
Interpreten sind im allgemeinen durch ihren (Künstler-)namen eindeutig identifiziert,
CDs durch ihre ISBN-Nummer und Songs benötigen eine Nummer.
Relationenschemata:
- Interpret{Name}
- CD{ISBN, Titel}
- Song{ID, Titel}
- nimmt auf{Name, ISBN}
- enthält{ISBN,Song.ID}
-
Entwickler sind Personen, am sinnvollsten ist hier ein eigener Schlüssel durch
eine Nummer, Komponenten werden im allgemeinen so benannt, dass sie eindeutig
bezeichnet sind.
Relationenschemata:
- Entwickler{ID, Name}
- Komponente{Name}
- enthält{Containerkomponente.Name, enthalteneKomponente.Name}
- programmiert{Entwickler.ID,Komponente.Name}
Jeder x- und y-Wert ist eine eindeutige reelle Zahl.
Relationenschemata:
- unabhängige_Variable_x{Wert}
- abhängige_Variable_y{Wert}
- wird_abgebildet_auf{Wert,Wert}
an diesem Beispiel kann man erkennen, dass die Darstellung einer Funktion in
einer Tabelle einer Datenbank keinen Sinn macht, wenn sie reell definiert ist:
Man müsste unendlich viele Zahlenpaare abspeichern!
Man sieht daran auch, dass es einen Unterschied macht, ein ER-Modell von einem
System zu erzeugen, oder es in eine Tabelle umzuwandeln.
-
Lehrer erhalten (als Personen) eine ID, Klassen und Fächer sind normalerweise im
Namen eindeutig.
Relationenschemata:
- Lehrer{ID, Vorname, Nachname, Geburtsdatum, Adresse}
- Klasse{Name, Schülerzahl}
- Fach{Name}
- unterrichtet{Lehrer.ID, Klasse.Name}
- hat_Lehrbefähigung{Lehrer.ID, Fach.Name}
- wird_unterrichtet{Klasse.Name, Fach.Name}