Grundlagen der Datenbanken
In einem E-R-Diagramm besteht zwischen Studierenden und Kursen eine Viele-zu-viele-Beziehung: Ein Studierender belegt mehrere Kurse, und ein Kurs wird von mehreren Studierenden belegt. Wie lässt sich diese Beziehung mit Tabellen einer relationalen Datenbank geeignet umsetzen?
- AEine neue Belegungstabelle anlegen, die StudentNr und KursNr als Fremdschlüssel enthält
- BDer Studierendentabelle eine Spalte KursNr hinzufügen
- CDer Kurstabelle eine Spalte StudentNr hinzufügen
Antwort und Erläuterung anzeigen
Antwort: A. Eine neue Belegungstabelle anlegen, die StudentNr und KursNr als Fremdschlüssel enthält
Ein E-R-Diagramm stellt die in einer Datenbank verwalteten Objekte (Entitäten) und die Beziehungen zwischen ihnen grafisch dar, und jede Beziehung hat eine Multiplizität (Kardinalität) wie eins zu eins, eins zu viele oder viele zu viele. Eine Eins-zu-viele-Beziehung lässt sich darstellen, indem die Tabelle auf der Viele-Seite den Primärschlüssel der Eins-Seite als Fremdschlüssel erhält (etwa eine Spalte Abteilungscode in der Mitarbeitertabelle). Eine Viele-zu-viele-Beziehung lässt sich jedoch nicht durch eine zusätzliche Spalte in einer der beiden Tabellen abbilden, denn damit ließe sich nur ein Kurs pro Studierendem (oder ein Studierender pro Kurs) erfassen. Stattdessen wird eine Belegungstabelle (eine assoziative Entität) mit StudentNr und KursNr als Fremdschlüsseln dazwischengeschaltet, die die Beziehung in zwei Eins-zu-viele-Beziehungen zerlegt: Studierende zu Belegung und Kurs zu Belegung. Der Primärschlüssel der Belegungstabelle ist üblicherweise die Kombination aus StudentNr und KursNr.