Fachbereich 12 – Institut für Informatik Dr. Karsten Tolle Datenbanken und Informationssysteme (DBIS) Grundlagen der Programmierung 2 Sommersemester 2010 Aufgabenblatt Nr. 12 Abgabe: Mittwoch 14. Juli vor! der Vorlesung Aufgabe 1 (15 Punkte) Funktionale Abhängigkeiten (FDs) oder besser die aus diesen resultierende Hülle F+ kann auch als mathematische Relation aufgefasst werden. Welche der folgenden mathematischen Eigenschaften gelten dabei und welche gelten nicht? (Erläuterung der Eigenschaften, z.B. unter: http://de.wikipedia.org/wiki/Relation_%28Mathematik%29) • • • • • • reflexiv irreflexiv (antireflexiv) symmetrisch asymmetrisch transitiv intransitiv Aufgabe 2 (40 Punkte) Gegeben sei das Relationenschema R(A B C D E F). Geben Sie für die jeweils gegebenen funktionalen Abhängigkeiten an, ob sich R in 2. und/oder 3. Normalform befindet und Begründen Sie diese Aussage. Gehen Sie davon aus, dass die 1. Normalform vorliegt. a) F = {A BCF, D EF } b) F = {AD BCF} c) F = {A BCDEF, B A, B E} d) F = {A BCDEF, D EF, AF D} e) F = { A BCD, CDE BF, BF AE} Aufgabe 3 (45 Punkte) Gegeben sei das folgende Schema einer Bank-Datenbank für Sparbücher. Dabei gelten FremdschlüsselBedingungen von der Relation SPARBUCH über die Attribute KNR und FNR zu den beiden anderen Relationen: FILIALE ( FNR BLZ NAME LEITER PLZ) SPARBUCH ( SNR GUTHABEN ZINSSATZ KNR FNR ) KUNDE ( KNR NAME VORNAME GEB-DATUM ) Stellen Sie an Ihr RDBMS die folgenden Anfragen in SQL: a) b) c) d) e) f) Ermitteln Sie den Durchschnitts-Anlagebetrag aller Sparbücher. Ermitteln Sie den kleinsten Zinssatz, der von den jeweiligen Filialen vergeben wurde. Geben Sie alle Informationen zu den Sparbüchern von Kunden aus, die „Müller“ heißen. Geben Sie alle Informationen zu den Sparbüchern von Kunden aus, die „Müller“ heißen und die zugehörige Filiale den Namen „Bockenheim 1“ trägt. Wie viel Geld ist in den einzelnen Filialen auf den Sparbüchern angelegt? Schränken Sie diese Anfrage auf die Filialen mit der Nummer (FNR) zwischen 20 und 75 ein. Sortieren Sie das Ergebnis absteigend nach der PLZ der Filiale. Wie viel Geld ist in den einzelnen Filialen auf den Sparbüchern angelegt? (Also wie bei e)) Beschränken Sie das Ergebnis auf die Filialen, in denen mehr als eine Million in Sparbüchern angelegt ist. Gegeben ist weiterhin folgende SQL-Anfrage. Was wird hierdurch abgefragt? SELECT SNR, GUTHABEN FROM SPARBUCH WHERE KNR IN ( SELECT KNR FROM KUNDE WHERE NAME=“DUCK“ AND VORNAME=“DAGOBERT“ ) ;