Lehrstuhl für Praktische Informatik III - Database Management Systems

::  Zurück zur Vorlesungsseite ::

 

Datenbanksysteme I, SS 2006

7. Übungsblatt

Abgabe bis 14.06.2006, 15:30

Matrikelnummer:
Passwort:

Aufgabe 1: Integritätsbedingungen

(elektronische Abgabe: 3 Punkte je Teilaufgabe)

Die Ticketverwaltung einer Vorverkaufsstelle wird mit Hilfe eines Datenbanksystems realisiert. Das SQL-Schema der Datenbank sieht folgendermaßen aus:

create table Veranstaltung (
Veranstaltung varchar(100) not null primary key,
Datum         date,
Ort           varchar(100));


create table Tickets (
TicketNr           integer not null primary key,
Preis              decimal(10,2),
Veranstaltungsname varchar(100),
constraint vname
  foreign key(Veranstaltungsname)
  references Veranstaltung
  on update cascade);


create table Verkauft (
TicketNr integer not null primary key,
KundenNr integer,
constraint ticket
  foreign key(TicketNr)
  references Tickets,
constraint kunde
  foreign key(KundenNr)
  references Kunde
  on delete cascade);


create table Kunde (
KundenNr integer not null primary key,
Name     varchar(100),
Wohnort  varchar(100));

Gehen Sie bei den folgenden Änderungsoperationen jedes Mal vom ursprünglichen Zustand der Relationen aus, d.h. von den ursprünglichen 22 Tupeln.


(a) Welche Tupel werden bei Ausführung des folgenden SQL-Befehls geändert?

update Veranstaltung
set Veranstaltung = 'B.B.King'
where Veranstaltung = 'B.B.King - King the of Blues';


Veranstaltung
1 WM:EC-DE 20.06.2006 Berlin
2 WM:SE-GB 15.06.2006 Köln
3 WM:NL-AR 16.05.2002 Frankfurt
4 B.B.King 10.09.2006 Mannheim, SAP Arena


Tickets
5 2345 50.00 WM:EC-DE
6 2346 50.00 WM:EC-DE
7 2350 60.00 WM:SE-GB
8 2351 60.00 WM:SE-GB
9 4712 120.00 WM:NL-AR
10 4713 120.00 WM:NL-AR
11 4714 160.00 WM:NL-AR
12 3257 69.00 B.B.King
13 3258 69.00 B.B.King


Verkauft
14 2345 0815
15 2346 0815
16 2350 4711
17 4714 007
18 3257 3333


Kunde
19 007 Rudi Völler Leverkusen
20 4711 Verona Feldbusch Köln
21 0815 Rudi Carell Alkmaar
22 4711 Eric Clapton London

oder:
23 Keine Tupel werden geändert!


(b) Welche Tupel werden bei Ausführung des folgenden SQL-Befehls gelöscht?

delete from Tickets where TicketNr = 4714;


Veranstaltung
1 WM:EC-DE 20.06.2006 Berlin
2 WM:SE-GB 15.06.2006 Köln
3 WM:NL-AR 16.05.2002 Frankfurt
4 B.B.King 10.09.2006 Mannheim, SAP Arena


Tickets
5 2345 50.00 WM:EC-DE
6 2346 50.00 WM:EC-DE
7 2350 60.00 WM:SE-GB
8 2351 60.00 WM:SE-GB
9 4712 120.00 NL-AR
10 4713 120.00 NL-AR
11 4714 160.00 NL-AR
12 3257 69.00 B.B.King
13 3258 69.00 B.B.King


Verkauft
14 2345 0815
15 2346 0815
16 2350 4711
17 4714 007
18 3257 3333


Kunde
19 007 Rudi Völler Leverkusen
20 4711 Verona Feldbusch Köln
21 0815 Rudi Carell Alkmaar
22 4711 Eric Clapton London

oder:
23 Keine Tupel werden gelöscht!


(c) Welche Tupel werden bei Ausführung des folgenden SQL-Befehls gelöscht?

delete from Verkauft where TicketNr > 4000;


Veranstaltung
1 WM:EC-DE 20.06.2006 Berlin
2 WM:SE-GB 15.06.2006 Köln
3 WM:NL-AR 16.05.2002 Frankfurt
4 B.B.King 10.09.2006 Mannheim, SAP Arena


Tickets
5 2345 50.00 WM:EC-DE
6 2346 50.00 WM:EC-DE
7 2350 60.00 WM:SE-GB
8 2351 60.00 WM:SE-GB
9 4712 120.00 NL-AR
10 4713 120.00 NL-AR
11 4714 160.00 NL-AR
12 3257 69.00 B.B.King
13 3258 69.00 B.B.King


Verkauft
14 2345 0815
15 2346 0815
16 2350 4711
17 4714 007
18 3257 3333


Kunde
19 007 Rudi Völler Leverkusen
20 4711 Verona Feldbusch Köln
21 0815 Rudi Carell Alkmaar
22 4711 Eric Clapton London

oder:
23 Keine Tupel werden gelöscht!


(d) Welche Tupel werden bei Ausführung des folgenden SQL-Befehls gelöscht?

delete from Kunde where Name = 'Verona Feldbusch';


Veranstaltung
1 WM:EC-DE 20.06.2006 Berlin
2 WM:SE-GB 15.06.2006 Köln
3 WM:NL-AR 16.05.2002 Frankfurt
4 B.B.King 10.09.2006 Mannheim, SAP Arena


Tickets
5 2345 50.00 WM:EC-DE
6 2346 50.00 WM:EC-DE
7 2350 60.00 WM:SE-GB
8 2351 60.00 WM:SE-GB
9 4712 120.00 NL-AR
10 4713 120.00 NL-AR
11 4714 160.00 NL-AR
12 3257 69.00 B.B.King
13 3258 69.00 B.B.King


Verkauft
14 2345 0815
15 2346 0815
16 2350 4711
17 4714 007
18 3257 3333


Kunde
19 007 Rudi Völler Leverkusen
20 4711 Verona Feldbusch Köln
21 0815 Rudi Carell Alkmaar
22 4711 Eric Clapton London

oder:
23 Keine Tupel werden gelöscht!

Aufgabe 3: Funktionale Abhängigkeiten

(elektronische Abgabe: je 1 Punkt)

Welche der folgenden funktionalen Abhängigkeiten sind in der Ausprägung der folgenden Tabelle erfüllt?

A B C D
a1 b1 c1 d1
a1 b1 c2 d1
a2 b2 c1 d2
a2 b2 c2 d2
a3 b2 c2 d3
a4 b1 c2 d4
a4 b1 c4 d4
a4 b1 c5 d4


A -> B: Ja Nein
C -> B: Ja Nein
A, C -> D: Ja Nein
A -> D: Ja Nein
D -> C: Ja Nein
B, C -> A: Ja Nein