Sie sind auf Seite 1von 2

Institut fr Informatik

Ludwig-Maximilians-Universitt Mnchen

Mnchen, 9.1.2003

Prof. Dr. Hans-Peter Kriegel


Stefan Schnauer

bungen zur Vorlesung

Datenbanksysteme
Wintersemester 2002/2003
Blatt 10: Integrittsbedingungen, Transaktionen
Aufgabe 1) Integrittsbedingungen in SQL
Gegeben sind wieder die Relationen Lieferanten (L), Teile (T), Projekte (P) und ihre
Beziehungsrelation (LTP) der Lieferanten-Teile-Projekte-Datenbank:
L (LNR, LNAME, STATUS, ORT)
P (PNR, PNAME, ORT)

T (TNR, TNAME, FARBE, GEWICHT)


LTP (LNR, TNR, PNR, MENGE)

Ergnzen Sie die Relationen mit Hilfe des alter table-Befehls um Primrschlssel-,
Fremdschlssel- und Typ-(Wertebereichs-)Bedingungen. Die vereinfachte Syntax lautet
findet sich auf der Rckseite der Angabe.
Aufgabe 2) Serialisierbarkeit von Transaktionen
Sei a ein Attribut in der Datenbank, und seien T1, T2 und T3 Transaktionen, die folgende
Operationen durchfhren:
T1: a = a + 1
T2: a = a * 2
T3: Print a; a= 1
a) Die Transaktionen T1, T2 und T3 werden nebenlufig ausgefhrt. Wenn a zu Beginn
den Wert 0 hat, wieviele mgliche korrekte Ergebnisse gibt es?
b) Gegeben sei folgende interne Struktur der Transaktionen T1, T2 und T3:
T1

T2

T3

R1: RETRIEVE a INTO t1


t1 = t1 + 1

R2: RETRIEVE a INTO t2


t2 = t2 * 2

R3: RETRIEVE a INTO t3


Print t3

U1: UPDATE a FROM t1

U2: UPDATE a FROM t2

U3: UPDATE a FROM 1

Wieviele verschiedene Schedules sind mglich?


c) Wenn a zu Beginn den Wert 0 hat, gibt es Schedules, die zwar ein korrektes Resultat
liefern, aber dennoch nicht serialisierbar sind?

DOWHUBWDEOH

DGGBFROXPQBRSWLRQV

WDEOHBFRQVWUDLQW

IRUHLJQBNH\BFODXVH

WDEOHBUHIBFRQVWUDLQW

UHIHUHQFHBFODXVH

FROXPQBFRQVWUDLQW