Universität Würzburg Datenbanken Institut für Informatik Prof. Dr. Dietmar Seipel Dipl.-Inform. Christian Schneiker Dipl.-Inform. Joachim Spoerhase Wintersemester 2009/10 1. Übungsblatt Aufgabe 1 (Entity–Relationship–Modell) (12 Punkte) Es soll ein erweitertes ER–Modell für die Universitätsbibliothek erstellt werden. Dabei sollen folgende Gegebenheiten modelliert werden: a) Ein Buch ist gekennzeichnet durch seinen Verfasser, den Titel, den Verlag, das Erscheinungsjahr und die Inventarnummer. b) Die Bibliothek ist gegliedert in die Teilbibliotheken der einzelnen Institute, die jeweils durch den Institutsnamen und eine eindeutige Bibliotheksnummer beschrieben sind. Leider wurden die Inventarnummern der Bücher beim Zusammenschluß der Teilbibliotheken nicht angepaßt, so daß sie nur innerhalb der einzelnen Teilbibliotheken eindeutig sind. Trotzdem soll jetzt ein globaler Katalog erstellt werden. c) Jeder Student, gegeben durch Matrikelnummer und Name, hat die Möglichkeit, Bücher auszuleihen. Zu jedem entliehenen Buch muß das Datum der Ausleihe abrufbar sein, um eine Leihfrist von 4 Wochen kontrollieren zu können; außerdem soll das Semester der Ausleihe erfaßt werden. Aufgabe 2 (Datenbankaufbau in Sql) (12 Punkte) a) Transformieren Sie das ER–Modell für die Universitätsbibliothek aus Aufgabe 1 ins relationale Datenmodell. Geben Sie dazu die erzeugten Tabellen mit Primär– und Fremdschlüsselbedingungen an. b) Geben Sie geeignete Create Table–Statements zur Erzeugung der Tabellen an. Aufgabe 3 (Datenbankanfragen in Sql) (12 Punkte) Geben Sie Sql–Statements zur Beantwortung der folgenden Anfragen an die in Aufgabe 2 erstellte Datenbank für die Universitätsbibliothek an. a) Welche Studierenden haben ein Buch entliehen ? b) In welchen Teilbibliotheken steht das Buch “Datenbanksysteme” des Verfassers “Kemper” ? c) Zu jedem Buch soll die Anzahl der vorliegenden Exemplare ermittelt werden. Die Ausgabe soll nach dieser Anzahl sortiert werden. d) Welche Studierenden haben innerhalb eines Semesters mehr als 50 Bücher entliehen, und wieviele Bücher haben diese entliehen ? e) Zu jeder Teilbibliothek soll die Anzahl der nicht entliehenen Bücher ermittelt werden. Aufgabe 4 (Relationale Algebra) (6 Punkte) Zeigen Sie, daß sich die Operatoren a) Schnitt ∩, b) Theta–Join ⋊ ⋉θ und c) Division ÷ durch die Basisoperatoren Differenz \, Selektion σθ , Projektion πV und kartesisches Produkt × ausdrücken lassen, und daß sie somit der relationalen Algebra keine zusätzliche Mächtigkeit verleihen. Abgabe: in der Vorlesung am Freitag, dem 06. November 2009 Abgabe in 3er–Gruppen möglich! Besprechung: in den Übungen am 09. und 11. November 2009