Klausur Datenbankmanagementsysteme

Ähnliche Dokumente
Klausur Datenbankmanagementsysteme

Semesterklausur Wiederholung

Klausur Datenbankmanagementsysteme

Semesterklausur Datenbanksysteme 1 SS 2015

Inhaltsverzeichnis. Vorwort Kapitel 1 Einleitung... 15

Inhaltsverzeichnis. Vorwort 13. Kapitel 1 Einleitung 15

Abiturprüfung Informatik, Grundkurs

Auf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort... 13

Grundlagen von SQL. Informatik 2, FS18. Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich

5/14/18. Grundlagen von SQL. Grundlagen von SQL. Google, Facebook und Co. setzen auf SQL. Whatsapp

Datenbank und Tabelle mit SQL erstellen

Auf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort 13

Seminar 2. SQL - DML(Data Manipulation Language) und. DDL(Data Definition Language) Befehle.

Fachhochschule Darmstadt Darmstadt, den KLAUSUR zur Lehrveranstaltung "Datenbanken"

Wiederholung VU Datenmodellierung

insert, update, delete Definition des Datenbankschemas select, from, where Rechteverwaltung, Transaktionskontrolle

Übungsblatt 10: Lösungsvorschlag

Vorlesung Datenbanken I Nachklausur

Inhaltsverzeichnis. Lothar Piepmeyer. Grundkurs Datenbanksysteme. Von den Konzepten bis zur Anwendungsentwicklung ISBN:

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

SQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language)

Relationale Datenbanken

Einführung SQL Data Definition Language (DDL)

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

Vorlesung Software-Engineering I

Wiederholung VU Datenmodellierung

Vorlesung Datenbanken I Zwischenklausur

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

Datenzugriffskomponente mit JPA 2.1

Probeklausur Datenbanktechnologie

Da ist zunächst der Begriff der Menge.

Universität Augsburg, Institut für Informatik Wintersemester 2008/2009 Prof. Dr. W. Kießling 03. Februar Semesterklausur

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

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

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

SQL structured query language

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

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

SQL. Datendefinition

SQL. Ziele. Grundlagen von SQL. Beziehung zur relationalen Algebra SELECT, FROM, WHERE. Joins ORDER BY. Aggregatfunktionen. dbis.

DB-Datenbanksysteme. DB SQL-DML 1 Mario Neugebauer

Vorlesung Datenbanken I Endklausur

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

SQL Data Manipulation Language (DML) und Query Language (QL)

Datenbanken Unit 4: Das Relationale Modell & Datenintegrität

Testklausur 1 Übungsaufgaben aus alten Datenbanken 1 Klausuren zum Data Science-Synchronisationsmodul Datenbanken WS 2016/17

Microsoft Access 2010 SQL nutzen

Eine neue Datenbank erstellen

Probeklausur mit Musterlösung

Wirtschaftsinformatik 7a: Datenbanken. Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte

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

Datenbanken und Informationssysteme Sommersemester 2012 Probeklausur

Datenmodelle und Datenbanken 1 Internet-Datenbanken

(4 Punkte) Aufgabe 1: Relationenalgebra - Relationenkalkül

Relationales Datenbanksystem Oracle

Probeklausur Datenmodellierung und Datenbanksysteme

Daten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell. Jetzt: -> Formulierung in DDL

Oracle 10g Einführung

Datenbanken. Zusammenfassung. Datenbanksysteme

OpenOffice - Base G. Laner 1

Als Hilfsmittel sind Schreibuntensilien und unbeschriebene Papierbögen zugelassen.

DB I S. 1 Referentielle Aktionen [10 P.] Gegeben sei folgende Datendefinition:

Anwendungsentwicklung Datenbanken SQL. Stefan Goebel

Handout zur Unit Datenmodellierung Web-Technologien Datenmodellierung Prof. Dr. rer. nat. Nane Kratzke

Abfragen (Queries, Subqueries)

Datenbanken Probeklausur (WS08/09)

Klausur Datenbanken. Fachhochschule Furtwangen, WS 08/09,

SQL. erfolgreich Madrid Amsterdam An imprint of Pearson

Datenbanksysteme Kapitel 5: SQL - Grundlagen

Vorlesung Datenbank-Entwurf Klausur

Software-Engineering Einführung

Introduction to Data and Knowledge Engineering. 6. Übung SQL

Datenbanken und Informationssysteme II

Kapitel 3: Datenbanksysteme

3 Query Language (QL) Einfachste Abfrage Ordnen Gruppieren... 7

A Datendenition in SQL ( Punkte)

SQL. SQL: Structured Query Language. Früherer Name: SEQUEL. Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99

Datenbanksysteme Kapitel 5: SQL Grundlagen Teil 1

Inhaltsverzeichnis. Einleitung

D1: Relationale Datenstrukturen (14)

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski.

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.

7. Einfache Auswertungen aus der Datenbank (select)

Die Bestellungen eines Schreibwarengeschäftes sollen auf eine aktuelle Form mit Hilfe einer zeitgemäßen Datenbank umgestellt werden.

Tutorial Excel Übung 7 Datenbanken I -1- Die Aufgabenstellung ist der folgenden URL zu entnehmen: Übung 7.

3. Grundlagen relationaler Datenbanksysteme

Prüfung Informatik für Ökonomen II. 14. Januar Teil 1: Datenbanktechnik Musterlösungen

KonzMod-Braindump. von Ersties für Ersties. vom 15. Februar 2012

Transkript:

Klausur Datenbankmanagementsysteme Probeklausur II Sommersemester 2013 <Datum> Name:... Vorname:... Matr.Nr:... Studiengang:... Aufgabe Nr. Max. Punkte Erreichte Punkte 1 42 2 10 3 15 4 18 5 6 8 Zusatzaufgabe 5 Summe 100 Note: Bitte füllen Sie zuerst das Deckblatt aus und legen Sie Studentenausweis und Personalausweis bereit. Die Bearbeitungszeit beträgt 100+10 Minuten. Falls der vorgesehene Platz nicht für Ihre Lösung ausreichen sollte, benutzen Sie bitte die Rückseiten bzw. die leeren Seiten am Ende der Klausur. Wir wünschen Ihnen viel Erfolg! Klausur Datenbankmanagementsysteme Seite 1 von 22

Aufgabe 1: SQL (42 Punkte) Gegeben sei der folgende Auszug eines Datenbank-Schemas eines Energieversorgungsunternehmens: Anschlussort - IDort - strasse - hausnr - plz - ort Stromzaehler - IDzaehler - zaehlernummer - IDort - einbaulage - einbaujahr Zaehlerstaende - IDZstand - IDzaehler - datum - zaehlerstand - abgelesen - gerechnet Kunden - IDkunde - anrede - vorname - nachname - strasse - hausnummer - plz - ort Kunde_Tarif_Zaehler - IDkunde - IDzaehler - IDtarif - vertragsbeginn Rechnungen - IDrechnung - IDkunde - gesamtsumme - datumrechnung - datumfaellig - datumeingang Tarife - IDtarif - tarifname - preis_je_kwh Rechnungs_Teile - IDrechnungsteil - IDrechnung - IDzaehler - IDtarif - Verbrauch - betrag Bitte beachten Sie, dass: die Pfeile in der Darstellung oben immer auf das 1 -Element einer 1:n-Beziehung weisen. sich der Primärschlüssel in der Tabelle Kunde_Tarif_Zaehler aus den Attributen IDkunde, IDzaehler, IDtarif zusammensetzt. das Attribut zaehlernummer nur eindeutige Einträge beinhaltet, jedoch nicht der Primärschlüssel der Tabelle ist. die Zählstände in der Tabelle Zaehlerstaende jeweils zum ersten Tag eines Monats vom Unternehmen eingetragen werden. Dies geschieht entweder durch das Ablesen der entsprechenden Zähler oder durch eine Hochrechnung auf Grundlage alter Verbrauchswerte. Neue Zählerstände sind immer größer als vorhergehende Zählerstände des gleichen Zählers. alle Attribute mit Zeitpunktangaben mit dem Datentyp DATE definiert sind. alle Attribute, die mit dem Präfix ID beginnen, vom Typ INTEGER sind. Klausur Datenbankmanagementsysteme Seite 2 von 22

a) Erzeugen Sie die Tabelle Stromzaehler und berücksichtigen Sie hierbei die Primär- und Fremdschlüsselattribute. Beachten Sie weiter, dass das Attribut zaehlernummer keine doppelten Einträge enthalten darf, jedoch nicht der Primärschlüssel ist. Wählen Sie darüber hinaus geeignete Datentypen für die benötigten Attribute. (6 Punkte) b) Erzeugen Sie eine Sicht OffeneRechnungen mit allen Kunden- und Rechnungsinformationen (ohne Rechnungsteile). Geben Sie diese Informationen nur dann aus, wenn mindestens eine Rechnung noch nicht vollständig beglichen wurde. Hinweis: Ein Eintrag in die Spalte datumeingang erfolgt erst dann, wenn der vollständige Rechnungsbetrag eingegangen ist. (5 Punkte) Klausur Datenbankmanagementsysteme Seite 3 von 22

c) Ermitteln Sie die Stromzähler, die älter als 20 Jahre sind oder deren Zählerstande größer oder gleich 500.000 kwh sind. Hinweis: Nehmen Sie unabhängig von Ihrer Lösung unter Aufgabenteil a) an, dass das Attribut einbaujahr als ganzzahliger Wert in der DB gespeichert wird. Neue Zählerstände sind immer größer als vorhergehende Zählerstände des gleichen Zählers. (5 Punkte) d) Ermitteln Sie, ausgehend von einer korrekt erstellen Sicht OffeneRechnungen (siehe Aufgabenteil 1b), die Anzahl der Kunden, die mehr als eine Rechnung noch nicht bezahlt haben. (5 Punkte) e) Bestimmen Sie den Ort, in dem das Energieversorgungsunternehmen die meisten Kunden hat. (4 Punkte) Klausur Datenbankmanagementsysteme Seite 4 von 22

f) Berechnen Sie die Gesamtsumme der Rechnung mit der ID=555 auf Grundlage ihrer Rechnungsteile und setzen Sie den entsprechenden Wert in das Attribut gesamtsumme dieser Rechnung in Tabelle Rechnungen ein. (4 Punkte) g) Ermitteln Sie die Kunden (IDkunde genügt), die den Tarif mit der Bezeichnung Schnäppchentarif haben und gleichzeitig Rechnungen erhalten haben, deren Gesamtsumme kleiner oder gleich 100 Euro sind. Verwenden Sie zur Lösung dieser Aufgabe eine mengenbasierte Operation, die diese Schnittmenge ermittelt. (5 Punkte) Klausur Datenbankmanagementsysteme Seite 5 von 22

h) Ermitteln Sie die Differenz der Zählerstände für den Zeitraum vom 01.01.2010 bis zum 01.01.2011 für jeden Zähler. Beachten Sie hierbei, dass die Zählerstände jeweils zum ersten Tag eines Monats als einzelne Datensätze vorhanden sind. (8 Punkte) Klausur Datenbankmanagementsysteme Seite 6 von 22

Aufgabe 2: MCT der Fachhochschule Köln (10 Punkte) Frage A [1-90511]: Daten sollen in einer Datenbank nicht mehrfach gespeichert werden. (Bitte tragen Sie Ihre Antwort in das dafür vorgesehene Feld ein!) Ihre Antwort Antwortvorgabe... Diese Eigenschaft nennt man: Frage B [3-90450]: In ER - Diagrammen können Beziehungen auch Attribute haben. (Bitte kreuzen Sie die richtige(n) Antworten an!) Ihre Antwort Antwortvorgabe stimmt stimmt nicht Frage C [4-9180]: Mit welchen Operatoren der relationalen Algebra lässt sich der Vereinigungsoperator (UNION) simulieren? (Bitte kreuzen Sie die richtige(n) Antworten an!) Ihre Antwort Antwortvorgabe Selektion Projektion Kartesisches Produkt Mit keinem anderen Operator der relationalen Algebra. Frage D [5-9188]: Eine Relation in der ersten Normalform mit nur einem Primärschlüsselattribut ist automatisch in der zweiten Normalform. (Bitte kreuzen Sie die richtige(n) Antworten an!) Ihre Antwort Antwortvorgabe stimmt stimmt nicht Frage E [5-90644]: Jeder Wert eines Fremdschlüssels einer Relation A ist Wert eines Primärschlüssel in einer anderen Relation. Diese Eigenschaft heißt (Bitte tragen Sie Ihre Antwort in das dafür vorgesehene Feld ein!) Ihre Antwort Antwortvorgabe... Diese Eigenschaft heißt: Klausur Datenbankmanagementsysteme Seite von 22

Frage F [6-9182]: Ein Spalten-Constraint (COLUMN CONSTRAINT) kann folgende Klauseln haben: (Bitte kreuzen Sie die richtige(n) Antworten an!) Ihre Antwort Antwortvorgabe NOT NULL CHECK UNIQUE PRIMARY KEY FOREIGN KEY REFERENCES Frage G [-9058]: Mit welcher Komponente kann man in einer SELECT-Anweisung Spalten absteigend sortieren? (Bitte kreuzen Sie die richtige(n) Antworten an!) Ihre Antwort Antwortvorgabe ORDER BY keine von beiden GROUP BY Frage H [-92660]: Was ist das Ergebnis der folgenden SELECT-Klausel, wenn die Gehaltsspalte folgende Werte enthält: 1000, 4000, NULL, 3000, 2000. SELECT AVG(gehalt*12) AS Durchschnitt_Jahresgehalt FROM Mitarbeiter; (Bitte tragen Sie Ihre Antwort in das dafür vorgesehene Feld ein!) Ihre Antwort Antwortvorgabe... Das Ergebnis ist: Frage I [-9244]: Wie heißen die SQL-Befehle, mit den man eine Transaktion beenden kann? Bitte in alphabetischer Reihenfolge aufschreiben und durch ein Komma trennen! (Bitte tragen Sie Ihre Antwort in das dafür vorgesehene Feld ein!) Ihre Antwort Antwortvorgabe... Das sind: Klausur Datenbankmanagementsysteme Seite 8 von 22

Frage J [9-91961]: Für die JDBC-Klasse Connection gilt: (Bitte kreuzen Sie die richtige(n) Antworten an!) Ihre Antwort Antwortvorgabe Sie verwaltet die Datenbankverbindung. Mit ihrer Methode close() wird die Datenbankverbindung geschlossen. Sie enthält eine Methode rollback(), mit der laufende Transaktionen abgebrochen werden können. Mit ihrer Methode commit() kann der Auto-Commit-Modus deaktiviert werden. Klausur Datenbankmanagementsysteme Seite 9 von 22

Aufgabe 3: Relationale Algebra (15 Punkte) Gegeben seien drei Relationen r, s und t: K M O K M L K M L 3 3 4 1 4 3 1 4 8 r = 1 4 s = 1 4 5 6 t = 1 5 5 3 4 4 3 4 3 Berechnen Sie die Ergebnisrelationen folgender relational-algebraischer Ausdrücke: a) K (r) b) r s c) K= (r s) d) s t e) ( K=1 s) ( M= t) Klausur Datenbankmanagementsysteme Seite 10 von 22

Klausur Datenbankmanagementsysteme Seite 11 von 22

Aufgabe 4: Theorie (18 Punkte) 1. SQL: Geben Sie die Abarbeitungsreihenfolge von SQL-Abfragen an. (4 Punkte) 2. Recovery: Tragen Sie in die Tabelle unten ein, welche Vorkehrungen bei der Steal bzw. der Force-Politik zu treffen sind. (4 Punkte) Steal NOT Steal Force NOT Force Klausur Datenbankmanagementsysteme Seite 12 von 22

3. Grundlagen DBMS: Nennen Sie die drei Schichten der 3-Schichtenarchitektur und nennen Sie für jede der drei Schichten ein dazugehöriges SQL-Konstrukt. (3 Punkte) 4. Grundlagen DBMS: Nennen und erläutern Sie kurz (!), welche Anomalien durch mangelnde Normalisierung auftreten können. (3 Punkte) Klausur Datenbankmanagementsysteme Seite 13 von 22

5. Grundlagen Transaktionen: Nennen und erläutern Sie kurz (!), die Eigenschaften, die mit Transaktionen verbunden werden. (4 Punkte) Klausur Datenbankmanagementsysteme Seite 14 von 22

Aufgabe 5: Normalisierung ( Punkte) KfzID KPrefix KSuffix KfzKreis Automarke BesitzerName FührerscheinNr 542 E ES 411 Essen Ford Mustermann 166 2345 OB H 24 Oberhausen Citroen Heinrichs 33 2349 OB H 23 Oberhausen Porsche Heinrichs 33 2444 K X 1 Köln Opel Schmidt 532 Gegeben sei das oben angegebene Relationenschema, dass nur aus einer Tabelle von Kfz besteht. In der Tabelle darf jede KfzID nur einmal vorkommen; gleiches gilt für jede Kombination aus KPrefix und KSuffix. Anhand von KPrefix kann der KfzKreis bestimmt werden. Ferner kann anhand der FührerscheinNr auf den Besitzer eines Auto geschlossen werden (wobei jeder Autobesitzer genau einen Führerschein hat). Das Kfz-Kennzeichen ergibt sich aus KPrefix und KSuffix. 1. In welcher Normalform befindet sich das Relationenschema? 2. Begründen Sie unter Angabe einer funktionalen Abhängigkeit (keine doppelten Nennungen!), die im obigen Text definiert sind, warum sich die oben genannte Tabelle nicht in der 1., 2. bzw. 3. Normalform befindet. 1. NF: 2. NF: 3. NF: 3. Überführen Sie das oben genannte Schema (bestehend aus einer Tabelle) in die 3. Normalform und geben Sie das resultierende Relationenschema an (nur Relationenstruktur, ohne Daten und ohne unnötige Tabellen!). Klausur Datenbankmanagementsysteme Seite 15 von 22

Klausur Datenbankmanagementsysteme Seite 16 von 22

Aufgabe 6: Scheduling Gegeben sei die folgende Schedule: (8 Punkte) R1(e) R2(f) R2(g) R4(f) R3(e) W1(f) W3 (g) Welche (um die Sperren erweiterte) Ergebnisschedule würde von dem Zweiphasensperrprotokoll mit Preclaiming für die oben genannte Schedule erzeugt? Tragen Sie die vollständige Schedule inklusive der Sperren! in die folgende Tabelle ein. Beachten Sie dabei bitte, dass die Anzahl der Zeilen in der folgenden Tabelle keinen Hinweis auf die richtige Lösung gibt. e f g 1 2 2 3 Klausur Datenbankmanagementsysteme Seite 1 von 22

e f g 1 2 2 3 Klausur Datenbankmanagementsysteme Seite 18 von 22

Zusatzaufgabe 5 Punkte Erläutern Sie die Begriffe Pages und Extends aus dem DB2 Speichermodell. Klausur Datenbankmanagementsysteme Seite 19 von 22

Klausur Datenbankmanagementsysteme Seite 20 von 22

Klausur Datenbankmanagementsysteme Seite 21 von 22

Anhang Anhang Anhang Anhang Anhang Prof. Dr. R. Unland, Institut für Informatik und Wirtschaftsinformatik, Universität Duisburg-Essen 20.0.2011 Anhang: Datenbankschema Gegeben sei der folgende Auszug eines Datenbank-Schemas eines Energieversorgungsunternehmens: Anschlussort - IDort - strasse - hausnr - plz - ort Kunden - IDkunde - anrede - vorname - nachname - strasse - hausnummer - plz - ort Stromzaehler - IDzaehler - zaehlernummer - IDort - einbaulage - einbaujahr Kunde_Tarif_Zaehler - IDkunde - IDzaehler - IDtarif - vertragsbeginn Rechnungen - IDrechnung - IDkunde - gesamtsumme - datumrechnung - datumfaellig - datumeingang Zaehlerstaende - IDZstand - IDzaehler - datum - zaehlerstand - abgelesen - gerechnet Tarife - IDtarif - tarifname - preis_je_kwh Rechnungs_Teile - IDrechnungsteil - IDrechnung - IDzaehler - IDtarif - Verbrauch - betrag Bitte beachten Sie, dass: die Pfeile in der Darstellung oben immer auf das 1 -Element einer 1:n-Beziehung weisen. sich der Primärschlüssel in der Tabelle Kunde_Tarif_Zaehler aus den Attributen IDkunde, IDzaehler, IDtarif zusammensetzt. das Attribut zaehlernummer nur eindeutige Einträge beinhaltet, jedoch nicht der Primärschlüssel der Tabelle ist. die Zählstände in der Tabelle Zaehlerstaende jeweils zum ersten Tag eines Monats vom Unternehmen eingetragen werden. Dies geschieht entweder durch das Ablesen der entsprechenden Zähler oder durch eine Hochrechnung auf Grundlage alter Verbrauchswerte. Neue Zählerstände sind immer größer als vorhergehende Zählerstände des gleichen Zählers. alle Attribute mit Zeitpunktangaben mit dem Datentyp DATE definiert sind. alle Attribute, die mit dem Präfix ID beginnen, vom Typ INTEGER sind. _ Klausur Datenbankmanagementsysteme Seite 22 von 22 Anhang Anhang Anhang Anhang Anhang