Übungsblatt Nr. 4 - Informationssysteme

Werbung
Universität Dortmund
Fachbereich Informatik, Lehrstuhl 6
Prof. Dr. Norbert Fuhr
Informationssysteme (WS 2001/2002)
Prof. Dr. Norbert Fuhr
Leitung der Übungen: Christian Altenschmidt und Ralf Menzel
Übungsblatt Nr. 4
Abgabetermin: 20. November 2001, 1200 Uhr, Briefkasten 36
Aufgabe 1 (Isomorphietreue von relationalen Anfragen)
Jede relationale Anfrage Q muss isomorphietreu sein. Das heißt, falls es zu zwei Instanzen
M = (d, r1 , . . . , rn ) und M 0 = (d0 , r10 , . . . , rn0 ) eine Bijektion h : d → d0 gibt, für die
h[M ] = M 0 gilt, so muss auch h[Q(M )] = Q(M 0 ) gelten.
Gegeben sei folgende Instanz einer Datenbank:
spielt
Musiker
Mensch
Peter
Peter
Tristan
Tristan
Instrument
Gegenstand
Trompete
Pauke
Triangel
Trompete
Zeigt, dass es keine relationale Anfrage gibt, die zu dieser Instanz das folgende Ergebnis liefert:
?
Musiker
Mensch
Tristan
Peter
Peter
Instrument
Gegenstand
Pauke
Triangel
Pauke
Hinweis: Jeder Automorphismus ist ein Isomorphismus.
Punkte 3
Aufgabe 2
Gegeben sei folgendes relationales Datenbankschema:
RS = hhschöner | {schön, hässlich} | i, henthält | {Mischfarbe, Grundfarbe} | i | | i
mit der Menge der Konstanten
C = {rot, grün, blau, gelb, orange, pink, violett, weiß, schwarz}.
Außerdem sei folgende Instanz gegeben:
1
Informationssysteme
Übungsblatt Nr. 4
schöner schön
rot
gelb
blau
blau
gelb
schwarz
violett
hässlich
pink
grün
gelb
grün
rot
weiß
grün
enthält Misch
pink
pink
grün
grün
orange
orange
Grund
weiß
rot
blau
gelb
rot
gelb
Zusätzlich seien noch folgende relationale Ausdrücke gegeben:
• Φ1 = σschön=s (schöner 1 πq (schöner)) q(hässlich) = schön, q(s) = hässlich
• Φ2 = γ(πq1 (schöner) + πq2 (schöner)) q1 (X) = schön, q2 (X) = hässlich
• Φ3 = schöner 1 πq (enthält) q(schön) = Mischfarbe, q(hässlich) = Grundfarbe
1. Berechnet die jeweiligen Domänen der relationalen Ausdrücke.
2. Gebt umgangssprachlich die Bedeutung der oben angegebenen relationalen Ausdrücke an.
3. Was liefert eval(Φi )(C, schöner, enthält) für i = 1, 2, 3?
Punkte 2 + 2 + 2 = 6
Aufgabe 3
Betrachtet das Datenbankschema RS = hhAuftrag | {Kunde, Sorte, Anzahl, Brauerei} | i,
hArt | {Sorte, Fl-Gr, Alkohol, Hopfen, Malz, Brauerei} | i | | i. Gegeben sei folgende Instanz zu oben angegebenem Schema:
Auftrag
Art
Kunde
String
Imaginär
Minus
Minus
Maxidurch
Flop
Flop
Sorte
String
Pils
Light
Light
Light
Frei
Alt
Weizen
Fl-Gr
MiLiter
500
500
333
333
333
500
1000
Sorte
String
Light
Weizen
Alt
Frei
Pils
Weizen
Anzahl
Liter
600
1000
330
500
600
600
Alkohol
Vol-%‰
49
29
29
29
6
49
38
Brauerei
String
Suff
Bayernbräu
Suff
Schwips
Bayernbräu
Bayernbräu
Hopfen
mg
360
345
230
230
200
330
600
2
Malz
mg
330
345
230
230
490
360
600
Brauerei
String
Schwips
Suff
Suff
Schwips
Bayernbräu
Suff
Bayernbräu
Informationssysteme
Übungsblatt Nr. 4
1. Gebt an, welche der folgenden semantischen Bedingungen erfüllt sind und welche
nicht:
•
•
•
•
•
Sorte → Alkohol
π{Sorte,Brauerei} (Auftrag) ⊆ π{Sorte,Brauerei} (Art)
Sorte, Fl-Gr → Hopfen
Alkohol ⇒
⇒ Sorte, Brauerei | Fl-Gr, Hopfen, Malz
Brauerei ⇒
⇒ Sorte, Fl-Gr | Alkohol, Hopfen, Malz
2. Gebt selbst noch zwei nichttriviale semantische Bedingungen an, die von dieser
Datenbankausprägung erfüllt werden.
Punkte 3 + 3 = 6
Aufgabe 4 (Semantische Bedingungen)
In den meisten Datenbanksystemen können nur wenige Arten von semantischen Bedingungen spezifiziert werden. Oft können nicht einmal beliebige funktionale Bedingungen
verwendet werden. Wenn bestimmte semantische Bedingungen nicht durch das Datenbanksystem sichergestellt werden, bleibt bisweilen keine andere Wahl, als „von Hand“ zu
überprüfen, ob die Bedingungen erfüllt sind.
Eine Datenbank enthalte u. a. die Relationen r und s. Die dazugehörigen Schemas
sind R und S. Für die Relation r sei die funktionale Abhängigkeit A, B → C gefordert
({A, B, C} ⊆ dom r). Außerdem soll für die Relationen r und s die globale Enthaltenseinsbedingung π{A,B} (R) ⊆ π{E,F} (S) gelten ({E, F} ⊆ dom s).
1. Welcher relationale Ausdruck liefert genau dann ein leeres Ergebnis, wenn r die
funktionale Bedingung erfüllt?
2. Welcher relationale Ausdruck liefert genau dann ein leeres Ergebnis, wenn die
Enthaltenseinsbedingung erfüllt ist?
Punkte 2 + 2 = 4
Aufgabe 5 (Benutzung von Oracle)
Für die Eingabe in Oracle-Datenbanksysteme steht das Programm sqlplus zur Verfügung (s. http://ls6-www/ir/teaching/lectures/is_ws01-02/).
1. Legt mit Hilfe von sqlplus Tabellen für folgendes ER-Schema an. Wie lauten die
notwendigen SQL-Befehle?
@
@
Nachname
Sprache
Tourist
Vorname
@
Beruf
Einwohnerzahl
H
HH
Reiseplan H
H
H
HH
HH
Kosten
3
Name
Land
Fläche
Informationssysteme
Übungsblatt Nr. 4
2. Gebt folgende Änderungen in die Datenbank ein:
• Meschede hat 32.679 Einwohner und eine Fläche von 219 km2 .
• Die Bahamas haben 301.000 Einwohner und eine Fläche von 13.878 km2 .
• Spanien hat 39.181.114 Einwohner und eine Fläche von 504.750 km2 .
• Die Abteilungsleiterin Maria Meier plant für 5.000 DM eine Reise nach Spanien. Außer ihrer Muttersprache Deutsch spricht sie noch fließend Englisch
und ein wenig Spanisch.
• Der Bankräuber Stefan Schulze ist nach seinem letzten Banküberfall auf der
Flucht. Er hat vor, die Beute im Wert von 22.548 DM vollständig auf den
Bahamas zu verprassen. Leider spricht er keine Fremdsprachen, sodaß er sich
wohl mit Deutsch durchschlagen muß.
• Herr Martin Müller, der Theaterdirektor, ist in Meschede im Sauerland zur
Schule gegangen und hat dort Englisch und Französisch als Fremdsprachen
gelernt. Heute wohnt er in München. Er plant, seinen alten Englischlehrer zu
besuchen und kauft für 448 DM eine Bahnfahrkarte.
Protokolliert Eure Eingaben und die Ausgaben von sqlplus mit dem Programm
script.
Punkte 4 + 2 = 6
4
Herunterladen