Vorlesung Datenbanken I Endklausur

Ähnliche Dokumente
Vorlesung Datenbanken I Zwischenklausur

Vorlesung Datenbanken II A Klausur

Vorlesung Dokumentation und Datenbanken Klausur

Datenbanken II A: Datenbank-Entwurf Klausur

Vorlesung Datenbanken I Nachklausur

Vorlesung Datenbanksysteme Endklausur

Vorlesung Datenbank-Entwurf Klausur

Vorlesung Objektorientierte Programmierung Klausur

Logische Programmierung & Deduktive Datenbanken Klausur

Vorlesung Datenbanken II A Klausur

Modul Datenbanken I Klausur

Vorlesung Dokumentation und Datenbanken Klausur

Vorlesung XML und Datenbanken Klausur

Klausur Datenbanken Wintersemester 2014/2015 Prof. Dr. Wolfgang May 27. Januar 2015, Uhr Bearbeitungszeit: 90 Minuten

Datenbanken II B: DBMS-Implementierung Klausur

Vorlesung Datenbanken II Endklausur

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnummer ein, und legen Sie Ihren Studierendenausweis

Vorlesung Grundlagen des World Wide Web Klausur

Gruppe B Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Klausur Datenbanken. Fachhochschule Furtwangen, WS 08/09,

Vorlesung Objektorientierte Programmierung Klausur

Klausur Datenbanken Wintersemester 2009/2010 Prof. Dr. Wolfgang May 2. Februar 2010, Uhr Bearbeitungszeit: 90 Minuten

Datenbanken Wintersemester 2013/2014 Datenbanken 1 Sommersemester 2013/

Semesterklausur Wiederholung

Datenbanken 1 Sommersemester 2014/

Modul Datenbanken I Klausur

Gruppe B Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Logischer Entwurf. Stufen der Entwicklung einer Datenbank. Inhalt. Übersicht. 1. Datenbank - Entwurf ( ER - Diagramm)

Gruppe B Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Datenbanken Wintersemester 2013/2014 Datenbanken 1 Sommersemester 2013/

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Klausur Datenbanken Wintersemester 2017/2018 Prof. Dr. Wolfgang May 26. Februar 2018, Uhr Bearbeitungszeit: 90 Minuten

zu E 1 der Form (0, 1) erfüllen.

Finalklausur zur Vorlesung Datenbanksysteme I Wintersemester 2003/2004 Prüfer: Prof. R. Bayer, Ph.D. Datum: Zeit: 16.

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Datenbanken und Informationssysteme II

1 Relationenalgebra [8 P.] Gegeben seien die folgenden Relationenschemata: Hafen(HNR, Ort, Grundsteinlegung)

Universität Augsburg, Institut für Informatik WS 2007/2008 Prof. Dr. W. Kießling 18. Jan Dr. A. Huhn, M. Endres, T. Preisinger Übungsblatt 12

Sommersemester 2012/

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Prüfung Datenmanagement

Gruppe B Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Modul Datenbanken I Klausur

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

Dieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Klausur Konzeptionelle Modellierung

Disclaimer. 1 Allgemeine Grundlagen (8 Punkte) (3 Punkte) (3 Punkte) (2 Punkte)... 2

Universität Augsburg, Institut für Informatik WS 2009/2010 Prof. Dr. W. Kießling 06. Nov Dr. A. Huhn, F. Wenzel, M. Endres Lösungsblatt 2

Datenbanken Unit 5: Datenintegrität und funktionale Abhängigkeit

Klausur Datenbanken Wintersemester 2015/2016 Prof. Dr. Wolfgang May 2. März 2016, Uhr Bearbeitungszeit: 90 Minuten

Relationales Datenbanksystem Oracle

Klausur Objektorientierte Datenbanken WS 2004/2005

Semesterklausur Datenbanksysteme 1 SS 2015

Gruppe B Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Datenbanken Unit 4: Das Relationale Modell & Datenintegrität

DB I S. 1 Relationenalgebra [8 P.] Gegeben seien die folgenden Relationenschemata: Person(PNR, Vorname, Nachname, Geburtsdatum, Wohnort Ort.

Datenbanken Probeklausur (WS08/09)

Einführung in Datenbanken. Kapitel 2: Das Relationale Modell

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Karlsruher Institut für Technologie Institut für Theoretische Informatik. Übungsklausur Algorithmen I

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

Wiederholung VU Datenmodellierung

Datenbanken und Informationssysteme II (PO B.3)

Probeklausur in Datenmanagement SS : ; 15:15 16:45 Uhr (Raum R1.007) : Aufgabensatz (Deckblatt, 5 Aufgaben auf 6 Blättern)

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 18. Juni 2007

Auswertung. Hinweise. Einführung in die Technische Informatik WS 2006/2007 Probeklausur. Aachen, 02. November 2006 SWS: V2/Ü2, ECTS: 4

Matthias Schubert. Datenbanken. Theorie, Entwurf und Programmierung relationaler Datenbanken. 2., überarbeitete Auflage. Teubner

10. Datenbank Design 1

Kapitel 3: Datenbanksysteme

Konzeptueller Entwurf

Hochschule Karlsruhe Technik und Wirtschaft Fakultät für Informatik und Wirtschaftsinformatik

Wiederholung VU Datenmodellierung

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

1 hat * Transformation des vorigen Entity-Relationship-Diagramms in ein Datenbankschema

Datenbanken und Informationssysteme Sommersemester 2012 Probeklausur

Vorlesung Objektorientierte Programmierung Probeklausur

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

Dieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.

Relationenmodell. Ziel:

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Vorlesung Objektorientierte Programmierung Klausur

Eine neue Datenbank erstellen

Einführung in Datenbanken. Definition einer Datenbank. Es gibt verschiedene Definitionen für eine Datenbank. Zwei Beispiele werden hier aufgeführt:

Datenmodelle und Datenbanken 1 Internet-Datenbanken

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

BauBit PRO Formulare und Begleitbriefe

Datenbanken. Sommersemester 2010 Probeklausur

PD Dr.-Ing. F. Lobeck. Seite 6

Datenstrukturen und Algorithmen 2. Klausur SS 2001

Klausur Datenbanken Wintersemester 2013/2014 Prof. Dr. Wolfgang May 29. Januar 2014, Uhr Bearbeitungszeit: 90 Minuten

Kapitel 6: Das E/R-Modell

DBS1: Übungsserie Normalformen und relationale Algebra Structured Query Language (SQL)

Transkript:

Prof. Dr. Stefan Brass 6. Februar 2004 Institut für Informatik MLU Halle-Wittenberg Vorlesung Datenbanken I Endklausur Name: Matrikelnummer: Studiengang: Aufgabe Punkte Max. Punkte Zeit 1 (SQL) 9 30 min 2 (ER-Entwurf) 4 10 min 3 (Transformation ER Tabellen) 5 15 min 4 (Funktionale Abhängigkeiten, BCNF) 2 5 min Summe 20 60 min Hinweise: Bearbeitungsdauer: 60 Minuten Skript, Bücher, Notizen sind erlaubt. Notebooks, PDAs, etc. dürfen nicht verwendet werden. Mobiltelefone bitte ausschalten. Die Klausur hat 7 Seiten. Bitte prüfen Sie die Vollständigkeit. Bitte benutzen Sie den vorgegebenen Platz. Wenn Sie auf die Rückseite ausweichen müssen, markieren Sie klar, daß es eine Fortsetzung gibt. Tauschen Sie keinesfalls irgendwelche Dinge mit den Nachbarn aus. Notfalls rufen Sie eine Aufsichtsperson zur Kontrolle. Bei der Aufgabe zum Ankreuzen sollten Sie wenigstens raten, wenn Sie die richtige Lösung nicht wissen (wenn Sie nichts ankreuzen, haben Sie den Punkt auf jeden Fall verloren). Es ist jeweils genau eine Antwort pro Teilaufgabe richtig. Fragen Sie, wenn Ihnen eine Aufgabe nicht klar ist!

Vorlesung Datenbanken I Endklausur 2 Beispiel-Datenbank (für Aufgabe 1) Eine Familie möchte ihre Ausgaben besser in den Griff bekommen (sie muß sparen). Dazu macht sie einen Plan, wieviel pro Monat wofür ausgegeben werden soll (welche Kostenstelle welchen Etat hat): PLAN POSTEN ETAT FEST Miete 750 Y Krankenversicherung 311 Y Lebensmittel 300 N Telefon 50 N Ersatzbeschaffungen 100 N Urlaub 100 N Die Spalte FEST enthält nur Y und N. Dabei bedeutet Y, daß dieser Posten einen festen Betrag pro Monat hat, der nicht durch verändertes Konsumverhalten beeinflussbar ist. Eine zweite Tabelle enthält die einzelnen Ausgaben, zusammen mit der Information, aus welchem Topf (Etat-Posten) das Geld genommen werden soll: AUSGABEN ID TAG MONAT POSTEN BETRAG ZWECK 1001 3 1 Lebensmittel 35 Rewe 1002 3 1 Lebensmittel 5 Bäcker 1003 10 1 Lebensmittel 60 Rewe 1004 17 1 Lebensmittel 50 Rewe 1005 24 1 Lebensmittel 50 Rewe 1006 27 1 Lebensmittel 20 Kondi 1007 31 1 Lebensmittel 80 Rewe 1008 31 1 Telefon 60 Telefonrechnung Januar 1009 3 2 Lebensmittel 50 Kondi 1010 5 2 Ersatzbeschaffungen 350 Neuer Kühlschrank Dabei ist POSTEN ein Fremdschlüssel, der auf PLAN verweist. Abbuchungen für feste Posten sind in dieser Tabelle nicht dargestellt. Alle Attribute dieser beiden Tabellen sind nicht optional ( not null ).

Vorlesung Datenbanken I Endklausur 3 Aufgabe 1 (SQL Anfragen) 9 Punkte Formulieren Sie die folgenden Anfragen in SQL. Sie bekommen drei Punkte für jede korrekte Anfrage. Natürlich sollen Ihre Anfragen nicht nur mit den obigen Beispiel-Daten funktionieren, sondern für beliebige Tabelleninhalte. Beachten Sie, daß auch für unnötige Komplikationen Punkte abgezogen werden können. a) Stellen Sie eine Anfrage, die den aktuellen Kontostand pro Posten ausgibt. Da jetzt der zweite Monat (Februar) ist, muß der Etat also verdoppelt werden, und davon die Summe aller Ausgaben des jeweiligen Postens abgezogen werden. Zur Vereinfachung brauchen Sie nicht das aktuelle Datum abzufragen, sondern können die Zahl 2 (für Februar) fest in die Anfrage einbauen. Dabei sollen nur Posten berücksichtigt werden, die auch tatsächlich Ausgaben haben, und die nicht ohnehin fest sind (wie Miete, Versicherung). Die zweite Ausgabespalte soll KONTOSTAND heissen. Anfrage-Ergebnis im Beispiel: POSTEN KONTOSTAND Lebensmittel 250 Telefon 40 Ersatzbeschaffungen -150 Schema: PLAN(POSTEN, ETAT, FEST) AUSGABEN(ID, TAG, MONAT, POSTEN PLAN, BETRAG, ZWECK)

Vorlesung Datenbanken I Endklausur 4 b) Geben Sie nun für alle Posten, die nicht fest sind, und für die noch keine Ausgabe vermerkt ist, den aktuellen Kontostand aus (das ist dann der Etat mal zwei, weil wir Februar haben). Sortieren Sie die Ausgabe nach der Größe der Kontostände (größter Kontostand zuerst). Anfrage-Ergebnis im Beispiel: POSTEN KONTOSTAND Urlaub 200 c) Geben Sie Namen und Etat des größten Postens im Plan aus. Anfrage-Ergebnis im Beispiel: POSTEN ETAT Miete 750 Schema: PLAN(POSTEN, ETAT, FEST) AUSGABEN(ID, TAG, MONAT, POSTEN PLAN, BETRAG, ZWECK)

Vorlesung Datenbanken I Endklausur 5 Aufgabe 2 (ER Entwurf) 4 Punkte Zeichnen Sie ein ER-Diagramm (in der Notation aus der Vorlesung) für folgende Anwendung: Ein Professor möchte die EMails, die er bekommt, in einer Datenbank verwalten und archivieren. Er will also Informationen über EMails abspeichern, sowie auch Informationen über Absender. Die Liste der Absender soll gleichzeitig als Adressbuch für ausgehende EMails verwendet werden, ansonsten brauchen Sie in dieser Aufgabe aber nur empfangene EMails zu betrachten. Für jede EMail vergibt das System automatisch eine eindeutige Nummer. Außerdem soll der Text der EMail abgespeichert werden und das Datum. Für jede Person soll die eindeutige EMail-Adresse und der Name abgespeichert werden. Sie können vereinfachend davon ausgehen, daß jede Person genau eine EMail- Adresse hat, deswegen brauchen Sie nicht zwischen Personen und EMail-Adressen zu unterscheiden. Für jede EMail soll der Absender abgespeichert werden. Dieser ist immer eindeutig bestimmt (jede EMail hat genau einen Absender). Eine Person kann natürlich Absender vieler EMails sein. Da die Liste der Personen auch als Adressbuch benutzt wird, ist es möglich, daß eine Person noch gar keine Email abgeschickt hat. In dieser Datenbank wird immer nur ein einziges Adressbuch (Menge von Email-Adressen) verwaltet. Die genannten Informationen sind immer vollständig bekannt (keine Nullwerte). Diese Anwendung kann selbstverständlich noch stark ausgebaut werden. Beschränken Sie sich aber bitte auf die hier genannten Anforderungen.

Vorlesung Datenbanken I Endklausur 6 Aufgabe 3 (Transformation ER Tabellen) 5 Punkte Eine Baufirma möchte die Fertigstellung ihrer Hausbau-Projekte mit Meilensteinen überwachen (Bodenplatte fertig, Rohbau fertig, Fenster eingebaut, etc.). Sie hat dazu folgendes Datenbank-Schema entworfen: Meilenstein (0, ) Nr Beschreibung erreicht in Datum (0, ) Projekt Nr Adresse Dieses Schema soll jetzt in das relationale Modell übersetzt werden. Geben Sie eine CREATE TABLE Anweisung in SQL für diejenige Tabelle an, die (mindestens) einen Fremdschlüssel enthält. Weitere Tabellen brauchen Sie nicht anzugeben. Die Datentypen für die Attribute sind: Die Attribute Nr beide NUMERIC(4). Die Attribute Beschreibung und Adresse beide VARCHAR(80). Das Attribut Datum hat den Typ DATE. Alle Attribute in obigem ER-Schema sind nicht optional.

Vorlesung Datenbanken I Endklausur 7 Aufgabe 4 (Funktionale Abhängigkeiten, BCNF) 2 Punkte a) Betrachten Sie wieder die Datenbank aus Aufgabe 1, speziell die Tabelle AUSGABEN. Ein Familienmitglied schlägt vor, daß vielleicht auch die funktionale Abhängigkeit ZWECK POSTEN gilt. Was bedeutet diese funktionale Abhängigkeit? Zu jedem Wert für POSTEN kann es nur einen Wert für ZWECK geben, das ist aber schon in der Beispieltabelle verletzt. Jeder ZWECK muß eindeutig einen POSTEN bestimmen. Wenn man als Zweck nur den Namen des Ladens angibt, wäre das bei großen Warenhäusern wie Karstadt ein Problem, weil man hier Dinge kaufen kann, die mit veschiedenen POSTEN des Plans verrechnet werden. Aber man kann den Zweck dann etwas genauer wählen. Es kann keine zwei Zeilen in der Tabelle geben, die sowohl in POSTEN, als auch in ZWECK übereinstimmen. b) Unabhängig davon, ob die funktionale Abhängigkeit ZWECK POSTEN sinnvoll ist, wäre die Tabelle mit dieser funktionalen Abhängigkeit (und dem Schlüssel, d.h. der Abhängigkeit ID TAG, MONAT, POSTEN, BETRAG, ZWECK) in BCNF? Ja. Nein. Diese funktionale Abhängigkeit zerstört BCNF. Nein. Diese funktionale Abhängigkeit ist kein Problem, aber die Tabelle wäre auch ohne diese funktionale Abhängigkeit nicht in BCNF.