http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann Normalformen Oldenbourg S137, Klett S117 http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann
http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann Eine gute Datenbank?! In einer guten Datenbank werden die Informationen so gespeichert, dass keine Redundanzen auftreten und also auch keine Gefahr für Anomalien besteht. http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann
Anomalien (Erinnerung) Eine Information (z.B. Herstelleradresse) ist mehrfach gespeichert (z.B. bei jedem Artikel). Wenn diese Information sich ändert, muss diese Änderung bei jedem Eintrag erfolgen. Update-Anomalie Eine Information ist nur in Verbindung mit einem anderen Eintrag gespeichert (z.B. Herstelleradresse bei Artikel). Wenn dieser andere Eintrag gelöscht wird, so geht auch diese Information verloren. Delete-Anomalie Es lassen sich nur neue Informationen einfügen, wenn ein entsprechender Primärschlüsseleintrag vorhanden ist (z.B. Hersteller können erst gespeichert werden, wenn sie bereits Artikel liefern). Insert-Anomalie http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann
http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann Beispiel Annika verleiht ihre CDs, DVDs und Bücher auch an Freunde. Damit sie den Überblick behält, trägt sie alles in eine Tabelle ein. Name Adresse Telefon Geb Verliehen Art Datum Bemerkung Caroline Meier Feldweg 1 Oberkotzau 123456 20.09. Pferde Buch 22.01 Mit Eselsohren zurück Felix Müller Dieselstr. 3 654321 28.07. Benjamin Blümchen CD 09.03. i.O. Offensichtlich besteht die Gefahr, dass in dieser Tabelle Redundanzen auftreten. Zerlege die Tabelle so, dass keine Anomalien mehr auftreten und trotzdem sämtliche Informationen erhalten bleiben. http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann
http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann Normalisieren Das Zerlegen von Tabellen, so dass zwar sämtliche Redundanzen, aber keine Informationen wegfallen, nennt man Normalisierung. Es läuft in drei Schritten ab. http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann
http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann 1. Normalform Erste Forderung: In Tabellen sollen keine zusammengesetzten Werte oder Aufzählungen vorkommen. (Im Beispiel: Name und Vorname in einer Spalte, Adresse in einer Spalte). Lösung: Die zusammengesetzten Attribute werden einfach in mehreren Spalten gespeichert. (d.h. Name, Vorname, Straße, Ort jeweils als eigene Spalte) http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann
http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann 1. Normalform Eine Tabelle enthält ausschließlich atomare (einelementige) Feldwerte. http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann
http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann 2. Normalform Zweite Forderung: Alle Attribute einer Tabelle lassen sich nur dann rekonstruieren, wenn man den vollständigen Primärschlüssel kennt. (Im Beispiel: Die Attribute die zu den Freunden von Annika gehören hängen nicht von den Attributen der ausgeliehenen Gegenstände ab. Auch eine umgekehrte Abhängigkeit besteht nicht.) Lösung: Eigenständige Klassen werden in eigenen Tabellen gespeichert. (d.h. eine Tabelle für die Freunde und eine für die verliehenen Gegenstände. Außerdem noch eine Tabelle für den „Ausleihvorgang“, der die Beziehung zwischen FREUND und GEGENSTAND herstellt.) http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann
http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann 2. Normalform Zusätzlich zur 1. Normalform muss gelten: Jedes Nicht-Schlüsselattribut muss vom gesamten Schlüssel abhängen. http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann
http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann 3. Normalform Dritte Forderung: Die Attribute sollen nur vom Schlüssel abhängen, nicht voneinander. Lösung: Gibt es gegenseitige Abhängigkeiten zwischen Nicht-Schlüsselattributen, so muss die Tabelle weiter aufgeteilt werden. http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann
http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann 3. Normalform Zusätzlich zur 2. Normalform muss gelten: Attribute sind nur vom Schlüssel, nicht voneinander abhängig. http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann
http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann Aufgaben Informatik 2 (Klett-Verlag): S120/1 – S121/5 http://www.informatik.digitale-schule-bayern.de/ © Katharina Brachmann