\documentclass{bschlangaul-aufgabe} \bLadePakete{er,rmodell} \begin{document} \bAufgabenMetadaten{ Titel = {Aufgabe}, Thematik = {Tutor}, Referenz = DB.Relationales-Modell.Relationenmodell.Tutor, RelativerPfad = Module/10_DB/30_Relationales-Modell/10_Relationenmodell/Aufgabe_Tutor.tex, ZitatSchluessel = db:ab:1, ZitatBeschreibung = {Aufgabe 5: ER-Tutor}, BearbeitungsStand = mit Lösung, Korrektheit = unbekannt, Ueberprueft = {unbekannt}, Stichwoerter = {Relationenmodell}, } \let\r=\bRelationMenge \begin{center} \begin{tikzpicture}[er2] \node[entity] (kurs) {Kurs}; \node[attribute,far,left of=kurs] {Kursname} edge(kurs); \node[attribute,right of=kurs] {KursNr} edge(kurs); \node[relationship,below of=kurs,node distance=6em] (betreut) {betreut} edge node[auto] {1} (kurs); \node[attribute,far,left of=betreut]{Sprechstunde} edge(betreut); \node[entity,below of=betreut,node distance=6em] (tutor) {Tutor} edge node[auto] {1} (betreut); \node[attribute,left of=tutor] {PersNr} edge(tutor); \node[attribute,right of=tutor] {Büro} edge(tutor); \node[attribute,below of=tutor,node distance=4em] {Name} edge(tutor); \end{tikzpicture} \end{center} Beim obenstehenden ER-Modell gilt: \index{Relationenmodell}\footcite[Aufgabe 5: ER-Tutor]{db:ab:1} \begin{itemize} \item Ein Tutor kann durch seine Personalnummer oder durch die Kombination aus Name und Büro(-nummer) identifiziert werden. \item Bei den Kursen ist sowohl Kursname als auch Kursnummer eindeutig. \end{itemize} \begin{enumerate} %% % (a) %% \item Überführen Sie die Entity-Typen Kurs und Tutor in entsprechende Relationen. Legen Sie für jede der Relationen einen Primärschlüssel fest. \begin{bAntwort} \begin{bRelationenModell} \r{Kurs}{\bPrimaer{KursNr}, Kursname} \r{Tutor}{\bPrimaer{PersNr}, Name, Buero} \end{bRelationenModell} bzw. \begin{bRelationenModell} \r{Kurs}{KursNr, \bPrimaer{Kursname}} \r{Tutor}{PersNr, \bPrimaer{Name, Buero}} \end{bRelationenModell} \end{bAntwort} %% % (b) %% \item Für die Konvertierung des Relationship-Typen betreut gibt es – unabhängig von den gewählten Primärschlüsseln in Aufgabe a – mehrere Möglichkeiten. Geben Sie alle möglichen Relationen (mit Festlegung des Primärschlüssels) an. \begin{bAntwort} Bei der Konvertierung des Relationship-Typ betreut enthält die ent\-sprech\-ende Relation jeweils einen Schlüsselkandidaten der Relationen Kurs und Tutor. Aufgrund der Aufgabenstellung besitzen beide Relationen zwei Schlüsselkandidaten \begin{itemize} \item Kurs: \bPrimaer{KursNr} und \bPrimaer{Kursname} \item Tutor: \bPrimaer{PersNr} und \bPrimaer{Name, Büro} \end{itemize} Da es sich um eine 1:1-Beziehung handelt, sind die ausgewählten Schlüsselkandidaten gleichzeitig Schlüsselkandidaten von betreut. Einer der beiden wird als Primärschlüssel ausgewählt. Es gibt folglich acht mögliche Relationen: \begin{bRelationenModell} \r{betreut}{\bPrimaer{PersNr}, KursNr, Sprechstunde} \r{betreut}{PersNr, \bPrimaer{KursNr}, Sprechstunde} \r{betreut}{\bPrimaer{PersNr}, Kursname, Sprechstunde} \r{betreut}{PersNr, \bPrimaer{Kursname}, Sprechstunde} \r{betreut}{\bPrimaer{Name, Büro}, KursNr, Sprechstunde} \r{betreut}{Name, Büro, \bPrimaer{KursNr}, Sprechstunde} \r{betreut}{\bPrimaer{Name, Büro}, Kursname, Sprechstunde} \r{betreut}{Name, Büro, \bPrimaer{Kursname}, Sprechstunde} \end{bRelationenModell} \end{bAntwort} \end{enumerate} \end{document}