Übung Normalisierung
Inhaltsverzeichnis
Kontrollfragen
- Wozu dient Normalisierung?
- Definiere die erste, zweite und dritte Normalform.
- Was definiert die BCNF?
- Worin besteht der Unterschied zwischen funktionaler und voll funktionaler Abhängigkeit?
- Was versteht man unter transitiver Abhängigkeit?
Übungen
Aufgabe 1
Ein Hochschulberater berät Studenten, die alle im Wohnheim der Universität leben und alle das gleiche Hauptfach studieren. Aus Besprechungen mit Studenten will der Berater eine kleine Datenbank zur Unterstützung der Beratung entwickeln. er legt folgende Attribute und Regeln fest:
- SNr
- Studentennummer, ganze Zahl , eindeutiger Schlüssel für Studenten
- SName
- Name des Studenten, nicht eindeutig
- ZNr
- Zimmernummer ganzzahlig; jeder Student hat ein Zimmer, das aber von mehreren Studenten bewohnt werden kann
- TNr
- Telefonnummer des Studenten; sie ist für alle Zimmerbewohner gleich
- Kurs
- Identifikationsnummer der Kurse, die ein Student belegt oder bereits abgeschlossen hat
- Semest
- Semester, in dem ein Kurs abgeschlossen wurde; ein Student darf den gleichen Kurs in einem späteren Semester wiederholen
- Note
- Note eines abgeschlossenen Kurses
Der Berater möchte folgende Daten in der Datenbank speichern (Auszug):
SNr | SName | ZNr | TNr | Kurs | Semest | Note |
3215 | Jonas Mike | 120DH | 2136 | MAT122 | W88 | 1,4 |
PHY120 | S88 | 2,5 | ||||
WIW330 | W89 | 3,1 | ||||
MAT122 | S89 | 1,2 | ||||
3456 | Schmidt Klaus | 237VH | 3127 | MAT122 | W87 | 3,2 |
MAT130 | S87 | 2,9 | ||||
4576 | Neider Paul | 120DH | 2136 | PHY230 | W88 | 2,8 |
MAT120 | S88 | 2,1 |
- Erstelle ein ER-Modell für diese Daten!
- Entwickle aus der obigen Tabelle eine gültige Relation in der 1., 2. und 3. Normalform. Welche Anomalien können dabei auftreten?
- Erstelle anhand des ER-Modells und der Umsetzungsregeln das relationale Modell! Begründe, inwieweit die Tabellen die 3. Normalform erfüllen!
- Gib die relationalen Operationen an, um Kurslisten auszugeben!
Aufgabe 2
Ein Krankenhaus stellt seine Daten auf EDV-Basis um. Die Patientendaten sind in der folgenden Art erfasst (Tupelschreibweise):
- Patient (Name,GebDatum,Adresse,Blutdruck,Datum,Diagnose,Therapie,Datum,Diagnose,Therapie,...,Belegung)
Erkläre anhand der folgenden Abbildungen den Gang der Normalisierung und begründe die einzelnen Schritte:
1. Normalform
2. Normalform
3. Normalform
Aufgabe 3
Wende auf die folgende Tabelle die ersten drei Normalformen an.
Hersteller | Modell | Typ | Räder | PS | Adresse | Land | Klimaanlage |
VW | Käfer | PKW | 4 | 45 | Volkswagenstr. 10; 34444 Wolfsburg | Deutschland | Ja |
Hanomag | II | LKW | 4 | 220 | Musterstr. 1; 22222 Hamburg | Deutschland | Nein |
Vespa | Vespa Light | Motoroller | 2 | 4 | La Strada 2; 122 Rom | Italien | Nein |
Suzuki | GX | Motorad | 2 | 8 | Koniciva 3; Yokohama | Japan | Nein |
Ford | Focus | PKW | 4 | 65 | Fritzweg 2; 54455 Köln | Deutschland | Ja |
VW | Golf | PKW | 4 | 72 | Volkswagenstr. 10; 34444 Wolfsburg | Deutschland | Nein |
VW | Golf | PKW | 4 | 72 | Volkswagenstr. 10; 34444 Wolfsburg | Deutschland | Ja |
Aufgabe 4
Die folgende Tabelle enthält Daten zu Projekten. Aufgeführt sind Projekte und die erforderlichen Sprachkenntnisse, sowie die Mitarbeiter, die über die entsprechenden Sprachkenntnisse verfügen. Als Primärschlüssel ist ausschließlich eine Kombination aller drei Attribute möglich (Wieso eigentlich?). Damit erfüllt die Tabelle die 3. Normalform. Dennoch sind redundante Daten vorhanden, da mehrwertige Abhängigkeiten vorkommen. Wie kann dieses Problem behoben werden?
Projektzuordnung
Personal- nummer | Projekt- nummer | Sprach- kenntnisse |
1 | 1 | Deutsch |
1 | 1 | Englisch |
1 | 6 | Englisch |
2 | 1 | Englisch |
2 | 6 | Französisch |
3 | 1 | Englisch |
3 | 2 | Spanisch |