Detailaufgaben:
1. Was ist eine Transaktion? Anforderungen nennen.
2. Prinzipieller Aufbau von Datenbankmanagementsystemen: Skizze und Beschreibung (war auf irgendeiner PPT-Folie, wie ärgerlich...)
3. Normalisierung und Normalformen erklären. Anschauliches Beispiel für 2NF oder 3NF.
4. Referenzielle Integrität erklären. Wie wird diese sichergestellt? Verschiedene Schlüsselarten erklären. Beispiel nennen.
Komplexaufgabe 2: ER-Modellierung und UML, habe ich nicht gemacht.
Komplexaufgabe 3: LPs, Tracks und Gruppen (= Bands) waren als ER-Modell gegeben. Umwandeln in Relationen (minimal). Zwei Abfragen auf die Relationen mussten formuliert werden (nicht SQL, sondern Relationenalgebra mit Projektion, Selektion und Natural Join)
Komplexaufgabe 4: Sichten erklären, Definition von Sichten in SQL, Vor- und Nachteile von Sichten. SQL-Contraints aufführen (PRIMARY KEY, UNIQUE, CHECK, FOREIGN KEY wahrscheinlich). Dann eine CREATE-Anweisung formulieren (inkl. Primärschlüssel, Sekundärschlüssel und Fremdschlüssel). Eine recht kurze SELECT-Anweisung formulieren mit Stringverkettung (Vorname + Leerzeichen + Nachname) und einem LEFT OUTER JOIN auf dieselbe Tabelle (Mitarbeiter - Chef)
Bis auf die 2. Detailfrage war die Klausur eigentlich recht gut machbar. Die Detailfragen waren sehr viel Schreibarbeit und ich bin dort mit den 40 Minuten kaum hingekommen; Komplexaufgabe 3 ging in allerkürzester Zeit und ca. eine 3/4 DIN A4-Seite insgesamt, Komplexaufgabe 4 war auch zeitlich gut zu schaffen, wenn auch mehr zu schreiben, wegen der Views. Ärgerlich fand ich Detailfrage 2 - Prinzipieller Aufbau von DBMS. Hier war nicht das ANSI-SPARC- oder das 5-Schichten-Modell gemeint, sondern das Diagramm aus den Folien mit den zig Kästchen und noch mehr Pfeilen. Da hätte ich ja im Leben nicht mit gerechnet, dass das abgefragt wird. Naja mal sehen...