09.10.2013 Aufrufe

Aufgabe 1 - TUM Informatik III: Datenbanksysteme

Aufgabe 1 - TUM Informatik III: Datenbanksysteme

Aufgabe 1 - TUM Informatik III: Datenbanksysteme

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Formulierung im Tupelkalkül<br />

ΠMatrNr,Vorgnger<br />

−<br />

VorlNr=Nachfolger<br />

hören voraussetzen<br />

Studenten<br />

hören<br />

Abbildung 1: Operatorbaum<br />

1. Wir selektieren die Studenten, die überhaupt eine Vorlesung hören (1. Existenzquantor).<br />

2. Wir wählen davon die Studenten aus, die eine Vorlesung hören, die einen Vorgänger<br />

hat (2. Existenzquantor).<br />

3. Wir fordern dann, dass die bisher ausgewählten Studenten diese Vorgängervorlesung<br />

nicht hören (negierter Existenzquantor).<br />

{s |s ∈ Studenten ∧ ∃ h ∈ hören<br />

(h.MatrNr = s.MatrNr ∧ ∃ v ∈ voraussetzen<br />

(h.VorlNr = v.Nachfolger ∧ ¬∃ h1 ∈ hören<br />

(h1.VorlNr = v.Vorgänger ∧ h1.MatrNr = s.MatrNr)))}<br />

Formulierung im Domänenkalkül<br />

Das Vorgehen ist analog zu dem beim relationalen Tupelkalkül. Unterschiede sind:<br />

1. Quantoren beziehen sich auf Domänenvariablen anstatt auf Tupelvariablen.<br />

2. Joinbedingungen können über Wiederverwendung von Domänenvariablen in Tupelkonstruktoren<br />

ausgedrückt werden, um somit Gleichheit von Variablen auszudrücken.<br />

3. Da über schon gebundene Domänenvariablen die hören-Tupel konstruiert werden können,<br />

die zu einem Ergebnis-Studenten nicht existieren dürfen, entfällt das ¬∃ hier.<br />

{[m,n] |∃ s([m,n,s] ∈ Studenten ∧ ∃ w([m,w] ∈ hören∧<br />

∃ v([v,w] ∈ voraussetzen ∧ ¬([m,v] ∈ hören))))}<br />

Wenn die bisher bestimmten Anfrageergebnisse um die Studenten erweitert werden sollen,<br />

denen die indirekten Grundlagen 2. Stufe zu gehörten Vorlesungen fehlen, ergibt sich keine<br />

andere Menge.<br />

4

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!