\documentclass{bschlangaul-aufgabe} \bLadePakete{normalformen,synthese-algorithmus} \begin{document} \bAufgabenMetadaten{ Titel = {Aufgabe 5}, Thematik = {Entwurfstheorie}, Referenz = 66116-2017-F.T2-TA1-A5, RelativerPfad = Examen/66116/2017/03/Thema-2/Teilaufgabe-1/Aufgabe-5.tex, ZitatSchluessel = examen:66116:2017:03, BearbeitungsStand = mit Lösung, Korrektheit = unbekannt, Ueberprueft = {unbekannt}, Stichwoerter = {Synthese-Algorithmus}, EinzelpruefungsNr = 66116, Jahr = 2017, Monat = 03, ThemaNr = 2, TeilaufgabeNr = 1, AufgabeNr = 5, } \let\ah=\bAttributHuelle \let\ahL=\bLinksReduktion \let\FA=\bFunktionaleAbhaengigkeiten \let\fa=\bFunktionaleAbhaengigkeit \let\m=\bAttributMenge \let\schrittE=\bSyntheseUeberErklaerung In der folgenden Datenbank sind die Ausleihvorgänge einer Bibliothek gespeichert: \index{Synthese-Algorithmus} \footcite{examen:66116:2017:03} | Ausleihe | LNr | Name | Adresse | BNr | Titel | Kategorie | ExemplarNr | 1 | Müller | Winklerstr. 1 Datenbanksysteme | Informatik 1 1 | Miller | Winklerstr. 1 | Datenbanksysteme | Informatik 2 2 | Huber | Friedrichstr. | 2 Anatomie I Medizin 5 2 Huber | Friedrichstr. 3 Harry Potter Literatur 20 3 Meier | Bismarkstr. 4 OODBS Informatik 1 4 Meier Marktpl. 5 | Pippi Langstrumpf | Literatur 1 Für die Datenbank gilt: Jeder Leser hat eine eindeutige Lesernummer (LNr), einen Namen und eine Adresse. Ein Buch hat eine Buchnummer (BNr), einen Titel und eine Kategorie. Es kann mehrere Exemplare eines Buches geben, welche durch eine, innerhalb einer Buchnummer eindeutigen, Exemplarnummer unterschieden werden. \begin{enumerate} \item Beschreiben Sie kurz, welche Redundanzen in der Datenbank vorhanden sind und welche Anomalien auftreten können. \item Nachfolgend sind alle nicht-trivialen funktionalen Abhängigkeiten, welche in der obigen Datenbank gelten, angegeben: \FA{ LNr -> Name; LNr -> Adresse; BNr -> Titel; BNr -> Kategorie; LNr, BNr, ExemplarNr -> Name, Adresse, Titel, Kategorie } % http://www.ict.griffith.edu.au/normalization_tools/normalization/ind.php#resources % LNr,BNr,ExemplarNr,Name,Adresse,Titel,Kategorie % LNr -> Name % LNr -> Adresse % BNr -> Titel % BNr -> Kategorie % LNr,BNr,ExemplarNr -> Name,Titel,Adresse,Kategorie Einziger Schlüsselkandidat ist \m{LNr, BNr, ExemplarNr}. Überführen Sie das Schema mit Hilfe des Synthesealgorithmus für 3NF in die dritte Normalform. \def\ahR#1#2#3#4{ \shoveleft{\ah{FA - (\fa{#1 -> #2}) \cup (\fa{#1 -> #3}), \m{#1}} =} \\ \shoveright{\m{#4}}\\ } \begin{bAntwort} \begin{enumerate} \item \schrittE{1} \begin{enumerate} \item \schrittE{1-1} \begin{liAHuelle} \\ \ahL{LNr, BNr, ExemplarNr}{LNr}{Titel, Kategorie} \ahL{LNr, BNr, ExemplarNr}{BNr}{Name, Adresse} \ahL{LNr, BNr, ExemplarNr}{\textbf{ExemplarNr}}{\textbf{Name, Adresse, Titel, Kategorie}} \end{liAHuelle} \FA{ LNr -> Name; LNr -> Adresse; BNr -> Titel; BNr -> Kategorie; LNr, BNr -> Name, Adresse, Titel, Kategorie } \item \schrittE{1-2} \begin{liAHuelle} \\ \ahR{LNr}{Name}{nichts}{Adresse} \ahR{LNr}{Adresse}{nichts}{Name} \ahR{BNr}{Titel}{nichts}{Kategorie} \ahR{BNr}{Kategorie}{nichts}{Titel} \ahR{LNr, BNr}{Name, Adresse, Titel, Kategorie}{Adresse, Titel, Kategorie}{Name, Adresse, Titel, Kategorie} \ahR{LNr, BNr}{Name, Adresse, Titel, Kategorie}{Name, Titel, Kategorie}{Name, Adresse, Titel, Kategorie} \ahR{LNr, BNr}{Name, Adresse, Titel, Kategorie}{Name, Adresse, Kategorie}{Name, Adresse, Titel, Kategorie} \ahR{LNr, BNr}{Name, Adresse, Titel, Kategorie}{Name, Adresse, Titel}{Name, Adresse, Titel, Kategorie} \end{liAHuelle} \FA{ LNr -> Name; LNr -> Adresse; BNr -> Titel; BNr -> Kategorie; LNr, BNr -> nichts } \item \schrittE{1-3} \FA{ LNr -> Name; LNr -> Adresse; BNr -> Titel; BNr -> Kategorie; } \item \schrittE{1-4} \FA{ LNr -> Name, Adresse; BNr -> Titel, Kategorie; } \end{enumerate} \item \schrittE{2} \item \schrittE{3} \item \schrittE{4} \end{enumerate} \end{bAntwort} \end{enumerate} \end{document}