institut f¨ur informatik - Lehrstuhl für Datenbanksysteme

Werbung
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
INSTITUT FÜR INFORMATIK
DER TECHNISCHEN UNIVERSITÄT MÜNCHEN
LEHRSTUHL III · DATENBANKSYSTEME · PROF. DR. GRUST
Übungen zur Vorlesung “Datenbanksysteme f. Hörer anderer Fachrichtungen”
Sommersemester 2006 · Jens Teubner ([email protected])
1. Übungsblatt
Ausgabe: 23. Mai 2006 · Besprechung: 29. Mai 2006
Hinweis zum Übungsbetrieb:
Die Raumfrage zu den Übungen ist mittlerweile geklärt. Die Übungen finden ab sofort im Raum
N1190 statt. Die nächste Übung ist am 29. Mai 2006.
Aufgabe 1: Einstieg in SQL
Eine Tabelle Vorlesungen beschreibt das Vorlesungsverzeichnis einer imaginären Universität:
Vorlesungen
VorlNr
5001
5041
5043
5049
4052
5052
5216
5259
5022
4630
Titel
Grundzüge
Ethik
Erkenntnistheorie
Mäeutik
Logik
Wissenschaftstheorie
Bioethik
Der Wiener Kreis
Glaube und Wissen
Die 3 Kritiken
SWS
gelesenVon
4
4
3
2
4
3
2
2
2
4
2137
2125
2126
2125
2125
2126
2126
2133
2134
2137
• VorlNr repräsentiert eine eindeutige Vorlesungsnummer. Sie ist in der Datenbank als Schlüssel
(key, s. Vorlesungsfolie 70) definiert.
• Die Spalten Titel und SWS beinhalten die Vorlesungstitel bzw. die Anzahl Semesterwochenstunden.
• gelesenVon ist eine Referenz auf eine weitere Tabelle (Professoren), die für uns vorerst nicht
weiter von Bedeutung ist. gelesenVon ist ein Fremdschlüssel (foreign key, s. Vorlesungsfolie 74)
auf die Tabelle Professoren.
Formulieren Sie, unter Annahme dieses Tabellenschemas, Anfragen in SQL:
(a) Listen Sie alle Einträge in der Tabelle Vorlesungen.
In welcher Sortierung erwarten Sie die Ausgabe des Ergebnisses? Wie könnten Sie die Sortierung beeinflussen, z. B. eine Sortierung nach der Semesterwochenstundenzahl?
(b) Listen Sie die Titel aller Vorlesungen in der Datenbank auf.
(c) Geben Sie die Semesterwochenstundenzahl (SWS) aus für die Vorlesung(en) mit dem Titel ‘Logik’.
(d) Unsere imaginäre Universität rechnet Semesterwochenstunden direkt um in ECTS-Punkte, wobei
1 ECTS = 1.5 SWS. Geben Sie alle Vorlesungen mit den entsprechenden ECTS-Punktzahlen aus.
(e) Geben Sie alle Vorlesungen aus mit mindestens 3 Semesterwochenstunden.
(f) Geben Sie alle Vorlesungen aus mit mindestens 3, jedoch höchstens 4 SWS.
Hinweis: Diese Teilaufgabe können Sie optional mit dem SQL-Prädikat BETWEEN implementieren. Informationen dazu finden Sie in jeder SQL-Dokumentation oder im Buch von Prof. Kemper.
(g) Geben Sie alle Vorlesungen aus, deren Titel mit ‘. . . theorie’ endet.
Hinweis: Dazu benötigen Sie das Prädikat LIKE, das in der Vorlesung vorgestellt wurde.
Hinweis zur Bearbeitung:
Auf den Webseiten des Lehrstuhls finden Sie eine internetbasierte Schnittstelle, um Ihre SQL-Ausdrücke
auszuprobieren:
http://www-db.in.tum.de/db2face/index.shtml
Über diese Schnittstelle steht Ihnen auch die oben aufgelistete Tabelle Vorlesungen zur Verfügung.
Aufgabe 2: Verständnisfragen
(a) Welche Datentypen würden Sie für die Spalten der obigen Tabelle vorschlagen? Kandidaten könnten sein: VARCHAR(n), NUMERIC(n), DECIMAL(n,m), . . . .
(b) Welche Eigenschaft muß eine Spalte besitzen, um als Schlüssel einer Tabelle in Frage zu kommen?
(c) Beschreiben Sie den Unterschied zwischen logischen und physischen Zeigern. Welche Vorteile
ergeben sich aus der ausschließlichen Verwendung logischer Zeiger?
(d) Was charakterisiert eine deklarative Anfragesprache? Weshalb werden deklarative Sprachen für
Datenbankanfragen bevorzugt?
Herunterladen