\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}
