\renewcommand{\Verteilung}{7+3} \begin{Aufg}[Tabellenschema] In einem Sportverein soll nach folgendem Klassendiagramm eine relationale Datenbank erstellt werden: \\[0.1cm] \begin{tikzpicture} \begin{class}[text width=3cm]{Mitglied}{0,0} \attribute{Mitglieds-Nr} \attribute{Name} \attribute{Vorname} \end{class} \begin{class}[text width=3cm]{Sportart}{12,0} \attribute{Name} \attribute{Ort} \attribute{Zeit} \end{class} \association{Mitglied}{m}{betreibt $>$ }{Sportart}{$<$ Wird betrieben von}{n} \end{tikzpicture} \begin{enumerate}[a)] \item Gib die Tabellenschemata inklusive sinnvoller Datentypen aller nötigen Tabellen an und markiere darin Fremd- und Primärschlüssel wie üblich. \item Nenne und beschreibe knapp zwei Probleme und deren Fachbegriffe die auftreten könnten, wenn zur Speicherung nur eine einzige Tabelle verwendet wird. \end{enumerate} \end{Aufg} \begin{Lsg} \begin{enumerate}[a)] \item \texttt{Mitglied[\underline{MitgliedsNr: Zahl}, Name: Text, Vorname: Text]} \\ \texttt{Sportart[\underline{Name: Text}, Ort: Text, Zeit: Datum]} \\ \texttt{betreibt[\underline{\dashuline{Mitglied: Zahl}, \dashuline{Sportart: Text}}]} \\[0.3cm] Zeit kann auch Typ Text sein \\ Datentypen müssen bei Primär- und Fremdschlüsselbeziehung übereinstimmen \\ \BE{2} auf die korrekte Notation (Tabellenname, Klammern, Doppelpunkte, Kommas, Attributnamen, Datentypen) \\ \BE{3} auf die korrekte Beziehungstabelle (Primärschlüssel, zwei Fremdschlüssel) \\ \BE{2} auf die vollständigen anderen beiden Tabelle \\ \item \begin{itemize} \item UPDATE-Anomalie: Vergessen von Einträgen bei Änderungen \item INSERT-Anomalie: Neue Sportart könnte nicht ohne Mitglieder angelegt werden \item DELETE-Anomalie: Eine Sportart würde bei der Löschung des letzten Mitglieds ebenfalls gelöscht werden \end{itemize} 0.5 BE pro Fachbegriff und 1 BE pro Beschreibung $\Rightarrow$ \BE{3} \end{enumerate} \end{Lsg}