Fachbereich 12 – Institut für Informatik Dr. Karsten Tolle
Datenbanken und Informationssysteme (DBIS)
Grundlagen der Programmierung 2
Aufgabenblatt Nr. 9
Abgabe: Mittwoch 20. Juni vor! der Vorlesung
Aufgabe 1 (31 Punkte)
Für die Gegenstände einer Museumssammlung soll ein ER-Modell erstellt werden. Zeichnen Sie als Vorbereitung für jede der folgenden einzelnen Aussagen ein kleines ER-Diagramm, unter Verwendung der Schreibweise aus der Vorlesung.
Dabei sollen so viele Details der Aussagen wie möglich modelliert werden. Achten Sie darauf alle Kardinalitäten und eine kurze Begründung anzugeben. Nicht jede der Aussagen ist eindeutig/vollständig. Wenn Sie zusätzliche Annahmen für nötig erachten, erläutern Sie diese in Textform und modellieren Sie diese entsprechend.
a) Jeder Gegenstand hat eine Beschreibung. Für die Versicherung muss jeder Gegenstand ebenfalls mit einem Versicherungswert versehen sein.
b) Die Museumssammlung besteht aus Antike-, Mittelalter- und Neuzeitfunde. Für jede dieser Epoche wird eine ungefähre Start- und End-Zeit angegeben.
c) Für jeden Gegenstand wird vermerkt wo er sich befindet:
a. im Depot zusammen mit einer Angabe wo dort,
b. in der Ausstellung, mit der Angabe in welchem Raum und eventuell welcher Vitrine oder c. falls er ausgeliehen ist, z.B. an ein anderes Museum, den Namen der ausleihenden Institution.
d) Zu jedem Gegenstand gibt es mindestens ein Foto. Für Münzen mindestens ein Foto der Vorderseite und ein Foto der Rückseite. Zu jedem Foto muss natürlich angegeben werden, wer es erstellt hat und unter welcher Lizenz es vorliegt.
Aufgabe 2 (10 Punkte)
Erstellen Sie für Ihre Modellierung der Teilaufgabe 1-d) ein gültiges Mengendiagramm (oder auch mehrere, je nach Modellierung), wodurch die Beziehungen zwischen zwei Münzen und fünf Fotos dargestellt werden.
Beschreiben Sie kurz in eigenen Worten, was dargestellt werden soll.
Aufgabe 3 (16 Punkte)
Erstellen Sie für folgende Aussage drei alternative Modellierungen, geben Sie an, welche dieser Sie am besten finden und warum:
Für einige Gegenstände gibt es die Koordinaten (Geo-Position mit Längen- und Breitengrad), eine Beschreibung des Fundkontextes und eventuell eine Verbindung mit anderen Gegenständen, die zusammen mit diesem gefunden wurden. Ebenfalls kann angegeben sein, wer (Name) die Gegenstände wann (Datum) gefunden hat.
Aufgabe 4 (14 Punkte)
Bauen Sie aus dem kleinen ER-Diagrammen aus Aufgabe 1 und ihrem Favorit aus Aufgabe 3 ein großes ER-Diagramm, welches alle Aussagen umfasst. Erweitern Sie es gegebenenfalls um sinnvolle Objekttypen, Beziehungstypen, Attribute und Hierarchien. Für jeden Entitytypen des ER-Diagramms, sollte durch dieses ER-Diagramm auch klar sein, wie es identifiziert wird.
Aufgabe 5 (9 Punkte)
Stellen Sie mindestens drei Business Rules auf, die für das ER-Diagramm aus Aufgabe 4 gelten könnten/sollten.
Aufgabe 6 (20 Punkte)
Nutzen Sie als Ausgangspunkt für diese Aufgabe den Musterdump* zu Aufgabe 2 vom Übungsblatt 8.
Geben Sie für die SQL-Anfragen unten an, ob diese ausgeführt werden oder eine Fehlermeldung geworfen wird (überlegen Sie vorher, was Sie erwarten). Falls sie ausgeführt werden, beschreiben Sie in eigenen Worten, was durch die Anfrage abgefragt wird und geben Sie das Ergebnis an. Falls Sie eine Fehlermeldung erhalten/erwarten, erläutern Sie warum dies der Fall ist:
a) SELECT * FROM polizeirevier WHERE nr = 'Nordend';
b) SELECT nr, flaeche*flaeche as Quadrat, flaeche FROM polizeirevier where nr < 5;
c) SELECT * FROM polizeirevier, strassenverzeichnis WHERE nr = 1;
d) SELECT nr, flaeche FROM polizeirevier where flaeche > 10.000;
e) SELECT count(*), count(distinct s.name) FROM polizeirevier p, strassenverzeichnis s WHERE p.nr = 1;