a. Der Wertebereich der Spalte ID_Patient
ist nicht atomar. In der Zeile mit ID_Zimmer=1
steht der zusammengesetze Wert (1, 2)
. Repariere deartige Verstöße gegen die erste Normalform indem du die Einträge auf einzelne Zeilen aufteilst. Wenn du das repariert hast, dann besteht die Tabelle aus sechs Zeilen anstatt wie bis jetzt aus zweien.
b. Das zusammengesetzte Attribut (ID_Zimmer, ID_Patient, ID_Medikament)
ist ein Schlüsselkandidat, weil es zu jeder Kombination von Werten der drei einzelnen Attribute höchstens eine Zeile in der Tabelle gibt. Das Attribut Bezeichnung
ist aber bereits durch ID_Medikament
eindeutig bestimmt. Repariere das indem du eine neue Tabelle (ID_Medikament, Bezeichnung
) erstellst und das Attribut Bezeichnung
aus der ursprünglichen Tabelle entfernst. Das Attribut ID_Medikament
in der ursprünglichen Tabelle wird dabei zu einem Fremdschlüssel in die neue Tabelle.
Verfahre ebenso mit anderen Fällen, in denen ein Nichtschlüsselattribut nur von einem Teil eines Schlüsselkandidaten abhängt.
Du musst die neu erstellten Tabellen ebenfalls normalisieren. Du wirst fünf Tabellen bekommen.
c. Nach meinen Überlegungen sollten die Tabellen in diesem Fall in dritter Normalform sein, wenn du zweite Normalform erreicht hast.