4. Konjunktive Anfragen und Relationenkalkül. Vorlesung "Informationssysteme" Sommersemester 2017

Größe: px
Ab Seite anzeigen:

Download "4. Konjunktive Anfragen und Relationenkalkül. Vorlesung "Informationssysteme" Sommersemester 2017"

Transkript

1 4. Konjunktive Anfragen und Relationenkalkül Vorlesung "Informationssysteme" Sommersemester 2017

2 Gliederung Konjunktive Anfragen Regelbasierte Anfragen Das konjunktive Kalkül Programme und Sichten Relationenkalkül Domänenkalkül Tupelkalkül Sicherheit Ausdrucksstärke Zusammenfassung Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 2

3 Konjunktive Anfragen Wir betrachten die Datenbank CCCCCCCCCCCC = {MMMMMMMMMMMM, LLLLLLLLLLLLLLLL, PPPPPPPPPPPPPPPPPP} wobei die Relationen Movies, Location und Pariscope die folgenden Schemata haben: sssss(mmmmmmmmmmmm) = {TTTTTTTTTT, DDDDDDDDDDDDDDDD, AAAAAAAAAA} sssss(llllllllllllllll) = {TTTTTTTTTTTTT, AAAAAAAAAAAAAA, PPPPPPPPP NNNNNNNNNNNN} sssss(pppppppppppppppppp) = {TTTTTTTTTTTTT, TTTTTTTTTT, SSSSSSSSSSSSSSS} Beispiele und Notationen folgen weitestgehend dem Buch "Foundations of Databases" S.Abiteboul, R. Hull und V. Vianu. PDF ist verfügbar unter Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 3

4 Beispieldaten Movies Title Director Actor Immer Ärger mit Harry Hitchcock Gwenn Immer Ärger mit Harry Hitchcock Forsythe Immer Ärger mit Harry Hitchcock MacLaine Immer Ärger mit Harry Hitchcock Hitchcock... Schreie und Flüstern Bergman Andersson Schreie und Flüstern Bergman Sylwan Schreie und Flüstern Bergman Thulin Schreie und Flüstern Bergman Ullman Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 4

5 Beispieldaten (2) Location Theater Address Phone Number Gaumont Opera 31 bd. des Italiens Saint Andre des Arts 30 rue Saint Andre des Arts Le Champo 51 rue des Ecoles Georges V 144 av. des Champs-Elysees Les 7 Montparnassiens 98 bd. du Montparnassiens Pariscope Theater Title Schedule Gaumont Opera Schreie und Flüstern 20:30 Saint Andre des Arts Immer Ärger mit Harry 20:15 Georges V Schreie und Flüstern 22:15 Les 7 Montparnassiens Schreie und Flüstern 20:45 Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 5

6 Anfragen Wer ist der Regisseur von 'Schreie und Flüstern'? à Movies In welchem Theater läuft 'Schreie und Flüstern'? à Pariscope Was ist die Adresse und die Telefonnummer des Theaters 'Le Champo'? à Location Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 6

7 Intuitive Beschreibung der Anfrageauswertung "Gib Namen und Adressen der Theater aus, die einen Bergman-Film spielen." Zur Erinnerung: sssss MMMMMMMMMMMM = {TTTTTTTTTT, DDDDDDDDDDDDDDDD, AAAAAAAAAA} sssss LLLLLLLLLLLLLLLL = {TTTTTTTTTTTTT, AAAAAAAAAAAAAA, PPPPPPPPP NNNNNNNNNNNN} sssss PPPPPPPPPPPPPPPPPP = {TTTTTTTTTTTTT, TTTTTTTTTT, SSSSSSSSSSSSSSS} Kann wie folgt berechnet werden: Falls es jeweils Tupel r1, r2, r3 aus den Relationen Movies, Pariscope, Location gibt, so dass der Regisseur in r1 'Bergman' ist und die Titel der Tupel r1 und r2 gleich sind und die Theater in Tupel r2 und r3 gleich sind dann möchten wir Theater und Adresse von Tupel r3. Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 7

8 Prädikatenlogische Beschreibung Falls es jeweils in den Relationen Movies, Pariscope und Location Tupel xx tttt, BBBBBBBBBBBBBBB, xx aaaa, xx tth, xx ttii, xx ss und xx ttt, xx aaaa, xx pp gibt, dann nehme das Tupel Theater: xx ttt, Address: xx aaaa in die Antwort auf. xx tttt, xx ttt etc. sind Variablen. Wir können die Anfrage umschreiben als aaaaaa xx ttt, xx aaaa MMMMMMMMMMMM xx tttt, BBBBBBBBBBBBnn S, xx aaaa, PPPPPPPPPPPPPPPPPP xx ttt, xx tttt, xx ss, LLLLLLLLLLLLLLLL(xx ttt, xx aaaa, xx pp ) wobei aaaaaa (für Answer/Antwort) eine Relation über {Theater, Address} ist Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 8

9 Prädikatenlogische Beschreibung (2) Kopf (Head) und Rumpf (Body) Der Ausdruck links von wird als Kopf bezeichnet. Der Ausdruck rechts von heisst Rumpf. ans(x th, x ad ) Movies(x ti, 'Bergman', x ac ), Pariscope(x th, x ti, x s ), Location(x th, x ad, x p ) Der obige Ausdruck kann noch vereinfacht werden als ans(x th, x ad ) Movies(x ti, 'Bergman', _), Pariscope(x th, x ti, _), Location(x th, x ad, _) wobei das Zeichen _ benutzt wird, um alle Variablen zu ersetzen, die nur ein Mal auftreten. Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 9

10 Regelbasierte Konjunktive Anfrage Sei R ein Datenbankschema. Eine regelbasierte konjunktive Anfrage über R hat die Form aaaaaa uu RR 1 uu 1, RR nn (uu nn ) uu, uu 1, uu nn sind Tupel Notation: falls vv =< xx 1, xx mm > dann schreiben wir RR(vv) anstelle von RR(xx 1, xx mm ) uu ii muss Stelligkeit (arity) passend zu RR ii haben. Jede Variable aus uu muss mindestens ein Mal in einem der uu 1, uu nn auftreten. Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 10

11 Semantik von Regelbasierten Konjunktiven Anfragen Betrachtet man eine Instanz einer Datenbank, also Ausprägungen von Tupeln in den einzelnen Relationen, dann kann man sich eine Regel so vorstellen, dass wenn man eine gültige Belegung des Rumpfes gefunden hat, der Kopf der Regel das Ergebnis darstellt. Betrachten wir wieder Anfrage qq als aaaaaa uu RR 1 uu 1, RR nn uu nn Sei I eine Instanz (Ausprägung) der Datenbank R. Das Abbild von I unter Anfrage qq ist qq II = vv uu vv ist eine Belegung der Variablen aus qq und vv uu ii II RR ii, ii [1, nn]} Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 11

12 Belegung von Variablen: Beispiel ans(x th, x ad ) Movies(x ti, 'Bergman', x ac ), Pariscope(x th, x ti, x s ), Location(x th, x ad, x p ) Betrachten wir folgende Belegung der Variablen: vv(xx tttt ) = SSSSSSSSSSSSS uuuuuu FFFFüssssssssss vv(xx aaaa ) = UUUUUUUUUUUUU vv(xx ttt ) = GGGGGGGGGGGGGG OOOOOOOOOOO vv(xx ss ) = 20: 30 vv(xx aaaa ) = 31 bbbb. dddddd IIIIIIIIIIIIIIIII vv(xx pp ) = Dies ist eine gültige Belegung, da Tupel (vv xx tttt, "Bergman", vv(xx aaaa )) = ("Schreie und Flüstern", "Bergman", "Ullman") II(MMMMMMMMMMMM), für unsere Beispielausprägung II, analog für die beiden anderen Relationen bzw. Tupel. Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 12

13 Weitere Beispiele Finde Name und Personalnummer aller W3-Professoren: aaaaaa(xx nnnn, xx pppp ) PPPPPPPPPPPPPPPPPPPPPP(xx pppp, xx nnnn, W3, xx rrrr ) Welche Vorlesungen bietet Prof. Sokrates an? aaaaaa xx tttt PPPPPPPPPPPPPPPPPPPPPP xx pppp, SSSSSSSSSSSSSSss S, xx rrrr, xx rrrr, VVVVVVVVVVVVVVVVVVVVVV xx vvvv, xx tttt, xx ssss, llllllllll(xx pppp, xx vvvv ) Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 13

14 Intensionale vs. Extensionale Relationen Wir berechnen durch die Erstellung von Anfragen nicht nur Ergebnisse, sondern definieren dabei implizit auch neue Relationen, z.b. die neue Relation W3Profs, die alle Professoren mit Rang W3 enthält: WWWPPPPPPPPPP(xx pppp, xx nnnn, xx rrrr ) PPPPPPPPPPPPPPPPPPPPPP(xx pppp, xx nnnn, WWWW, xx rrrr ) Man unterscheidet zwischen Relationen, die ursprünglich in der Datenbank vorhanden sind, den sogenannten extensionalen Relationen, und Relationen, die durch Regeln definiert werden, den sogenannten intensionalen Relationen. Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 14

15 Auswertung (aka. Berechnung) der Anfrage Naive brute-force Methode zur Berechnung der Anfrageergebnisse: Betrachtung aller möglichen Belegungen anhand der in den Relationen auftretenden Werte. Für jede dieser Belegungen schauen, ob es eine gültige Belegung ist. Diese Vorgehensweise ist natürlich sehr teuer. Z.B. für MMMMMMMMMMMM(xx 1, BBBBBBBBBBBBBBB, xx 2 ) machen nur Belegungen Sinn, die für dieses Tupel mit xx 1 und xx 2 aus MMMMMMMMMMMM den Regisseur gleich 'Bergman' haben. Idealerweise kann man mit sogenannten Indexen die Suche nach geeigneten Tupeln beschleunigen. Dazu kommen wir später im Abschnitt über Anfrageverarbeitung und Indexstrukturen. Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 15

16 Monotonie Monotonie: Eine Anfrage qq über RR ist monoton, wenn für alle Ausprägungen (Instanzen) II, JJ über RR, gilt: Falls II JJ dann qq(ii) qq(jj). D.h. wenn neue Tupel zu den Relationen hinzukommen fallen keine Ergebnistupel weg. Konjunktive Anfragen sind monoton Welche Anfragen sind somit nicht möglich? Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 16

17 Anfragen im konjunktiven Kalkül Gegeben eine konjunktive regelbasierte Anfrage aaaaaa ee 1, ee mm RR 1 uu 1, RR nn (uu nn ) Die dazu äquivalente Anfrage im konjunktiven Kalkül ist {ee 1, ee mm xx 1, xx kk RR 1 uu 1 RR nn uu nn } Die Variablen xx 1, xx kk sind die Variablen, die im Rumpf aber nicht im Kopf der regelbasierten Anfrage auftreten. Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 17

18 Anfragen im konjunktiven Kalkül: Beispiel aaaaaa xx ttt, xx aaaa MMMMMMMMMMMM xx tttt, S BBBBBBBBBBBBnn S, xx aaaa, PPPPPPPPPPPPPPPPPP xx ttt, xx tttt, xx ss, LLLLLLLLLLLLLLLL(xx ttt, xx aaaa, xx pp ) aaaaaa {xx ttt, xx aaaa xx tttt xx aaaa xx ss xx pp (MMMMMMMMMMMM(xx tttt, S BBBBBBBBBBBBnn S, xx aaaa ) PPPPPPPPPPPPPPPPPP(xx ttt, xx tttt, xx ss ) LLLLLLLLLLLLLLLL(xx ttt, xx aaaa, xx pp ))} Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 18

19 Formel im konjunktiven Kalkül Sei R ein Datenbankschema. Eine Formel über R im konjunktiven Kalkül ist ein Ausdruck, der eine der folgenden Formen besitzt: a) ein Atom über R der Form RR ii (uu ii ) b) (φφ ψψ), mit Formeln φφ und ψψ über R, oder c) xxφφ, wobei xx eine Variable ist und φφ ist eine Formel über R. Freie Variablen: Ein Auftreten einer Variablen xx in einer Formel φφ ist frei falls i. φφ ist ein Atom; oder ii. iii. φφ = ψψ ξξ und das Auftreten von xx ist frei in ψψ oder ξξ; oder φφ = yyψψ, xx und yy sind verschiedene Variablen, und das Auftreten von xx ist frei in ψψ Falls eine Variable nicht frei ist so nennen wir sie gebunden. Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 19

20 Anfragen im konjunktiven Kalkül Eine Anfrage im konjunktiven Kalkül über Datenbankschema R ist ein Ausdruck der Form ee 1, ee mm φφ} wobei φφ eine Formel des konjunktiven Kalküls ist und die Variablen ee 1, ee mm sind identisch zur Menge der freien Variablen in φφ. Theorem Regelbasierte konjunktive Anfragen und Anfragen im konjunktiven Kalkül sind äquivalent. Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 20

21 Gleichheit bzw. Vergleichsoperatoren aaaaaa xx ttt, xx aaaa MMMMMMMMMMMM xx tttt, xx dd, xx aaaa, xx dd = S BBBBBBBBBBBBBBnn S, PPPPPPPPPPPPPPPPPP xx ttt, xx ttii, xx ss, LLLLLLLLLLLLLLLL(xx ttt, xx aaaa, xx pp ) ist identisch zu aaaaaa xx ttt, xx aaaa MMMMMMMMMMMM xx tttt, S BBBBBBBBBBBBnn S, xx aaaa, PPPPPPPPPPPPPPPPPP xx ttt, xx ttii, xx ss, LLLLLLLLLLLLLLLL(xx ttt, xx aaaa, xx pp ) Ebenfalls möglich Vergleichsoperatoren, z.b. aaaaaa(xx mmmm ) SSSSSSSSSSSSSSSSSS(xx mmmm, xx nnnn, xx ssee ), xx ssss 12 Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 21

22 Anfrage-Programm Wie erwähnt, kann konzeptionell eine Anfrage so aufgefasst werden, dass sie eine neue Relation erzeugt, die dann in nachfolgenden Anfragen benutzt werden kann. Ein konjunktives Anfrage-Programm ist eine Sequenz von Regeln in der Form SS 1 (uu 1 ) bbbbbbbb 1 SS 2 (uu 2 ) bbbbbbbb 2 SS mm (uu mm ) bbbbbbbb mm Rekursion sei nicht zugelassen. Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 22

23 Beispiel SS 1 xx, zz QQ xx, yy, RR(yy, zz, ww) SS 2 xx, yy, zz SS 1 xx, ww, RR ww, yy, vv, SS 1 (vv, zz) SS 3 xx, zz SS 2 xx, uu, vv, QQ(vv, zz) Q R S 1 S 2 S Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 23

24 Beispiel SS 1 xx, zz QQ xx, yy, RR(yy, zz, ww) SS 2 xx, yy, zz SS 1 xx, ww, RR ww, yy, vv, SS 1 (vv, zz) SS 3 xx, zz SS 2 xx, uu, vv, QQ(vv, zz) Wir können die ersten beiden Zeilen auch schreiben als SS 2 xx, yy, zz QQ xx 1, yy 1, RR yy 1, zz 1, ww 1, xx = xx 1, ww = zz 1, RR ww, yy, vv, QQ xx 2, yy 2, RR yy 2, zz 2, ww 2, vv = xx 2, zz = zz 2 bzw. ohne Gleichheitsoperator SS 2 xx, yy, zz QQ xx, yy 1, RR yy 1, ww, ww 1, RR ww, yy, vv, QQ vv, yy 2, RR(yy 2, zz, ww 2 ) Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 24

25 Sichten (Englisch: Views) MMMMMMMMMMMMMM(xx tt ) MMMMMMMMMMMM(xx tt, xx dd, MMMMMMMMMMMMM) CCCCCCCCCCCCCCCCCCC xx tt, xx ss, xx pp PPPPPPPPPPPPPPPPPP LLLL CCCCCCCCCoo S, xx tt, xx ss, LLLLLLLLLLLLLLLL( LLLL CCCCCCCCCoo S, xx aa, xx pp ) Versuchen wir damit die folgende Anfrage auszudrücken: "Welche Titel in Marilyn werden im Le Champo um 21:00 Uhr gespielt?" aaaaaa xx tt MMMMMMMMMMMMMM xx tt, CCCCCCCCCCCCCCCCCCC xx tt, 21: 00 S, xx pp Falls diese Sichten nur virtuell sind (also nicht wirklich materialisiert/ausgeprägt) so wird die Anfrage doch ausgeführt via aaaaaa xx tt MMMMMMMMMMMM xx tt, xx dd, MMMMMMMMMMee S, PPPPPPPPPPPPPPPPPP LLLL CCCCCCCCCoo S, xx tt, 21: 00 S, LLLLLLLLLLLLLLLL( LLLL CCCCCCCCCoo S, xx aa, xx pp ) Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 25

26 Sichten (2) Eine alternative Formulierung: MMMMMMMMMMMMMM {xx tt xx dd (MMMMMMMMMMMM(xx tt, xx dd, MMMMMMMMMMMMM))}; CCCCCCCCCCCCCCCCCCC {xx tt, xx ss, xx pp xx aa (PPPPPPPPPPPPPPPPPP LLLL CCCCCCCCCoo S, xx tt, xx ss LLLLLLLLLLLLLLLL( LLLL CCCCCCCCCoo S, xx aa, xx pp ))}; aaaaaa {xx tt MMMMMMMMMMMMMM(xx tt ) xx pp (CCCCCCCCCCCCCCCCCCC(xx tt, 21: 00 S, xx pp ))} Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 26

27 Was ist mit Negation? Lassen wir nun Literale LL ii der Form RR(vv) oder RR(vv) zu, d.h. wir haben Regeln qq SS uu LL 1, LL nn wobei R der Name einer Relation ist, vv ist ein Tupel der passenden Stelligkeit und SS tritt nicht im Rumpf der Regel auf (also: nicht rekursiv). Beispiel: "In welchen Hitchcock Filmen hat Hitchcock nicht mitgespielt?" aaaaaa xx MMMMMMMMMMMM xx, HHHHHHHHHHHHHHHkkk, zz,, MMMMMMMMMMMM(xx, HHHHHHHHHHHHHHHkk S, HHHHHHHHHHHHHHHHHH) Was muss in der Datenbank gelten, damit diese Anfrage korrekt ist? Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 27

28 Negation "Gib alle Filme aus, bei denen nur Schauspieler mitgewirkt haben, die mal unter Hitchcocks Regie gespielt haben." HHHHHHHHHHHHHHHHHHH zz MMMMMMMMMMMM xx, HHHHHHHHHHHHHHHkk S, zz nnnnnnnnnnnn MMMMMMMMMMMM xx, yy, zz, HHHHHHHHHHHHHHHHHHH zz aaaaaa xx MMMMMMMMMMMM xx, yy, zz, nnnnnnnnnnnn(xx) Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 28

29 Relationenkalküle: Das Domänenkalkül Wenn wir zum konjunktiven Kalkül die Negation hinzunehmen, erhalten wir ein Relationenkalkül, nämlich das Domänenkalkül. Es gibt auch noch ein weiteres Relationenkalkül, das Tupelkalkül, welches wir uns später ansehen. Wir erlauben nun auch gleich noch weitere Vergleichsoperatoren, haben also Basis-Formeln (Atome) der Form RR(uu) mit Relation RR und Tupel uu über Domänenvariablen und Konstanten, sowie Atome der Form ee = ee S, ee ee S, ee ee S etc. für Domänenvariablen oder Konstanten ee und ee. Alle Atome sind Formeln. Darauf basierend haben wir Formeln der Form (φφ ψψ) für Formeln φφ und ψψ (φφ ψψ) für Formeln φφ und ψψ φφ für Formel φφ xxφφ für Variable xx und Formel φφ xxφφ für Variable xx und Formel φφ Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 29

30 Beispiele "In welchen Hitchcock-Filmen hat Hitchcock nicht mitgespielt?" xx tt xx aa MMMMMMMMMMMM xx tt, S HHHHHHHHHHHHHHHkk S, xx aa MMMMMMMMMMMM(xx tt, S HHHHHHHHHHHHHcccc S, S HHHHHHHHHHHHHHHkk S )} "Gib alle Filme aus, bei denen nur Schauspieler mitgewirkt haben, die mal unter Hitchcocks Regie gespielt haben." xx tt xx dd, xx aa MMMMMMMMMMMM xx tt, xx dd, xx aa yy aa ( yy dd MMMMMMMMMMMM(xx tt, yy dd, yy aa ) zz tt MMMMMMMMMMMM(zz tt, S HHHHHHHHhcccccccc S, yy aa }

31 Der relationale Tupelkalkül Das bislang betrachtete Relationen-Kalkül wird auch als relationales Domänenkalkül bezeichnet, da dort Domänenvariablen an die Domänen der einzelnen Attribute (Spalten) der Relationen gebunden werden. Eine Anfrage im relationalen Tupelkalkülhat die Form tt PP (tt)} wobei tt eine Tupelvariable ist und PP(tt) ein Prädikat (eine Formel). P (t) ist erfüllt t ist Teil des Ergebnisses tt. tttttttttt ss MMMMMMMMMMMM (tt. tttttttttt = ss. tttttttttt ss. dddddddddddddddd = HHHHHHHHHHHHHHHHHH uu MMMMMMMMMMMM (uu. tttttttttt = ss. tttttttttt uu. aaaaaaaaaa = HHHHHHHHHHHHHHHHHH))} Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 31

32 Das Relationale Tupelkalkül: Definition Formeln des Tupelkalküls bestehen aus Atomen der Form tt RR, mit Tupelvariabel tt und Relation RR, der Form tt. xx = ss. yy, tt. xx > ss. yy, etc. für Tupelvariablen tt und ss und Attributnamen xx und yy, sowie der Form tt. xx = cc und tt. xx > cc etc. für Konstanten cc. Alle Atome sind Formeln. Darauf basierend haben wir Formeln der Form (φφ ψψ) für Formeln φφ und ψψ (φφ ψψ) für Formeln φφ und ψψ φφ für Formel φφ xxφφ für Variable xx und Formel φφ xxφφ für Variable xx und Formel φφ Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 32

33 Beispiele W3-Professoren: pp pp PPPPPPPPPPPPPPPPPPPPPP pp. RRRRRRRR = WWW} Paare von Professoren (Name) und Assistenten (PersNr): pp. NNNNNNNN, aa. PPPPPPPPPPPP pp PPPPPPPPPPPPPPPPPPPPPP aa AAAAAAAAAAAAAAAAAAAAAA pp. PPPPPPPPPPPP = aa. BBBBBBBB} Studenten mit mindestens einer Vorlesung von Prof. Curie: ss ss SSSSSSSSSSSSSSSSSS h hörrrrrr(ss. MMMMMMMMMMMM = h. MMMMMMMMMMMM vv VVVVVVVVVVVVVVVVVVVVVV(h. VVVVVVVVVVVV = vv. VVVVVVVVVVVV pp PPPPPPPPPPPPPPPPPPPPPP(pp. PPPPPPPPPPPP = vv. gggggggggggggggggggg pp. NNNNNNNN = CCCCCCCCCCC)))} Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 33

34 ... in SQL... ist es sehr ähnlich: Studenten mit mindestens einer Vorlesung von Prof. Curie: SELECT s.* FROM Studenten s WHERE EXISTS( SELECT h.* FROM hören h WHERE h.matrnr=s.matrnr AND EXISTS( SELECT * FROM Vorlesungen v WHERE v.vorlnr=h.vorlnr AND EXISTS( SELECT * FROM Professoren p WHERE p.name= Curie AND p.persnr=v.gelesenvon))) Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 34

35 Sicherheit Einschränkung auf Anfragen mit endlichem Ergebnis. Zum Beispiel ist die Anfrage {nn (nn PPPPPPPPPPPPPPPPPPPPPP)} nicht sicher. Das Ergebnis ist unendlich. Bedingung: Ergebnis des Ausdrucks muss Teilmenge der Domäne der Formel sein. Die Domäne einer Formel enthält alle in der Formel vorkommenden Konstanten alle Attributwerte von Relationen, die in der Formel referenziert werden Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 35

36 Unsichere Anfragen im Domänenkalkül {xx MMMMMMMMMMMM( SSSSSSSSSSSSS uuuuuu FFFFüssssssssnn S, BBBBBBBBBBBBnn S, xx)} xx pppp, xx nnnn, xx rrrr, xx rrrr PPPPPPPPPPPPPPPPPPPPPP(xx pppp, xx nnnn, xx rrrr, xx rrrr )} {xx, yy MMMMMMMMMMMM( SSSSSSSSSSSSS uuuuuu FFFFFFFFFFFFFFFF, BBBBBBBBBBBBBBB, xx) MMMMMMMMMMMM(yy, BBBBBBBBBBBBnn S, UUUUUUUUUUUUU)} Wieso sind diese Anfragen unsicher? Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 36

37 Sicherheit des Domänenkalküls Sicherheit ist analog zum Tupelkalkül zum Beispiel ist {pp, nn, rr, oo (PPPPPPPPPPPPPPPPPPPPPP(pp, nn, rr, oo))} nicht sicher. Ein Ausdruck {xx 1, xx 2,, xx nn PP (xx 1, xx 2,, xx nn )} ist sicher, falls folgende drei Bedingungen gelten: 1. Falls Tupel (cc 1, cc 2,, cc nn ) mit Konstanten cc ii im Ergebnis enthalten ist, so muss jedes cc ii (1 ii nn) in der Domäne von PP enthalten sein. 2. Für jede existenz-quantifizierte Teilformel xx(pp 1 (xx)) muss gelten, dass PP 1 nur für Elemente aus der Domäne erfüllbar sein kann oder evtl. für gar keine. Das heisst: Wenn für eine Konstante cc das Prädikat PP 1 (cc) erfüllt ist, so muss cc in der Domäne von PP 1 enthalten sein. 3. Für jede universal-quantifizierte Teilformel xx(pp 1 (xx)) muss gelten, dass sie dann und nur dann erfüllt ist, wenn PP 1 (xx) für alle Werte der Domäne von PP 1 erfüllt ist. Das heisst: PP 1 (dd) muss für alle dd, die nicht in der Domäne von PP 1 enthalten sind, auf jeden Fall erfüllt sein. Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 37

38 Ausdruckskraft Die drei Sprachen relationale Algebra (ohne Gruppierung/Aggregation), relationaler Tupelkalkül, eingeschränkt auf sichere Ausdrücke und relationaler Domänenkalkül, eingeschränkt auf sichere Ausdrücke... sind gleich mächtig! Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 38

39 Zusammenfassung Konjunktive regelbasierte Anfragen und Kalküle, als regel- bzw. logikbasierte Möglichkeit Anfragen zu erstellen Dabei geben diese Anfragen vor, wie Ergebnistupel aussehen sollen bzw. wie sie zusammengehören, aber nicht wie das Ergebnis tatsächlich berechnet werden soll. Sogenannte deklarative Anfragen. Relationenalgebra, Domänenkalkül und Tupelkalkül sind gleich ausdrucksstark (mächtig). Wie bereits erwähnt, ist auch SQL deklarativ und durch das relationale Tupelkalkül inspiriert. Informationssysteme 2017 Kapitel 4: Konjunktive Anfragen und Relationenkalkül 39

Datenbanksysteme SS 2007

Datenbanksysteme SS 2007 Datenbanksysteme SS 2007 Frank Köster (Oliver Vornberger) Institut für Informatik Universität Osnabrück Kapitel 6b: Das relationale Modell Das Relationale Modell (vgl. Lerneinheit 6a) Wertebereiche (Domänen):

Mehr

Kapitel 7 Dr. Jérôme Kunegis. Logische Kalküle. WeST Web Science & Technologies

Kapitel 7 Dr. Jérôme Kunegis. Logische Kalküle. WeST Web Science & Technologies Kapitel 7 Dr. Jérôme Kunegis Logische Kalküle WeST Web Science & Technologies Lernziele Grundideen des Domain-Relationenkalküls (DRK) und des Tupel-Relationenkalküls (TRK) Relationale Datenbank als Formelmenge

Mehr

Kapitel DB:V (Fortsetzung)

Kapitel DB:V (Fortsetzung) Kapitel DB:V (Fortsetzung) V. Grundlagen relationaler Anfragesprachen Anfragen und Änderungen Relationale Algebra Anfragekalküle Relationaler Tupelkalkül Relationaler Domänenkalkül DB:V-67 Relational Algebra

Mehr

Relationale Kalküle. Grundlagen der Datenbanken. Dr. Jérôme Kunegis Wintersemester 2013/14

Relationale Kalküle. Grundlagen der Datenbanken. Dr. Jérôme Kunegis Wintersemester 2013/14 Web Science & Technologies University of Koblenz Landau, Germany Grundlagen der Datenbanken Dr. Jérôme Kunegis Wintersemester 2013/14 Lernziele Grundideen des Domänen-Relationenkalküls (DRK) und des Tupel-Relationenkalküls

Mehr

Anfragesprachen mit Rekursion Datalog

Anfragesprachen mit Rekursion Datalog Beispiel: Frankfurter U-Bahn-Netz Hier vereinfacht: Eine Relation U-Bahn-Netz mit Attributen Linie, Halt, nächsterhalt 7.1 7.2 Statische Analyse 7.3 U-Bahn-Netz Linie Halt nächsterhalt U4 Bockenheimer

Mehr

Ein Beispiel: Tabelle DICHTER

Ein Beispiel: Tabelle DICHTER Datenbanken Eine Datenbank ist eine Sammlung von Daten, die aus der Sicht des Benutzers zusammen gehören. Ein Datenbankverwaltungssystem (DBMS) ist ein informatisches System zur Verwaltung einer Datenbank.

Mehr

Datenbanksysteme SS 2007

Datenbanksysteme SS 2007 Datenbanksysteme SS 2007 Frank Köster (Oliver Vornberger) Institut für Informatik Universität Osnabrück 1 Kapitel 6a: Das relationale Modell 2 Das Relationale Modell Wertebereiche (Domänen): D 1, D 2,,...,

Mehr

Das relationale Modell

Das relationale Modell Das relationale Modell Das relationale Modell VO Datenmodellierung Katrin Seyr Institut für Informationssysteme Technische Universität Wien Katrin Seyr Seite 1 Das relationale Modell 1. Überblick Überblick

Mehr

Das Relationale Modell. Das Relationale Modell. Datenmodell. Das Relationale Modell

Das Relationale Modell. Das Relationale Modell. Datenmodell. Das Relationale Modell 11 12 13 Datenkomplexität und kombinierte Komplexität 11 12 13 Datenkomplexität und kombinierte Komplexität NICOLE SCHWEIKARDT GOETHE-UNIVERSITÄT FRANKFURT VORLESUNG LOGIK UND DATENBANKEN KAPITEL 1, SEITE

Mehr

QUALITY-APPs Applikationen für das Qualitätsmanagement. Probieren und Studieren

QUALITY-APPs Applikationen für das Qualitätsmanagement. Probieren und Studieren QUALITY-APPs Applikationen für das Qualitätsmanagement Probieren und Studieren Der Netzplan (Activity Network Diagram AND) Planung und Steuerung erfolgreicher Projekte Autor: Jürgen P. Bläsing (nach einer

Mehr

Schritte plus Alpha 1: Transkriptionen der Hörtexte. Lektion: Guten Tag. Track 2 Lektion 1 A/a, Ananas, Apfel, Ampel

Schritte plus Alpha 1: Transkriptionen der Hörtexte. Lektion: Guten Tag. Track 2 Lektion 1 A/a, Ananas, Apfel, Ampel Schritte plus Alpha : Transkriptionen der Hörtexte Lektion: Guten Tag Track Lektion A/a, Ananas, Apfel, Ampel Track Lektion N/n, Nase, Nudeln, Nuss Track Lektion E/e, Ente, Erdbeere, Essen Track 5 Lektion

Mehr

Einleitung Projektion Selektion Join Mengenop. Vollst.keit. Einleitung Projektion. Selektion Join. Vollst.keit. Einleitung Projektion Selektion Join

Einleitung Projektion Selektion Join Mengenop. Vollst.keit. Einleitung Projektion. Selektion Join. Vollst.keit. Einleitung Projektion Selektion Join Parsen der Anfrage (SQL) Transformation in eine Standardform (Relationenalgebra) Logische Optimierung Transformation in alternative Zugriffspläne, Physische Optimierung Ausführung des gewählten Zugriffsplans

Mehr

Didaktik der Algebra Jürgen Roth Didaktik der Algebra 4.1

Didaktik der Algebra Jürgen Roth Didaktik der Algebra 4.1 Didaktik der Algebra 4.1 Didaktik der Algebra Didaktik der Algebra 4.2 Inhalte Didaktik der Algebra 1 Ziele und Inhalte 2 Terme 3 Funktionen 4 Gleichungen Didaktik der Algebra 4.3 Didaktik der Algebra

Mehr

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007 6. Übung zur Vorlesung Datenbanken im Sommersemester 2007 mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007 Aufgabe 1: Rekursion Betrachten Sie die folgende Tabelle

Mehr

Kapitel 2: Einstieg in SQL

Kapitel 2: Einstieg in SQL Kapitel 2: Einstieg in SQL 2. Einstieg in SQL 2. SQL (Structured Query Language) ist die in der Praxis am weitesten verbreitete Datenbanksprache für relationale Datenbanken. Die Historie von SQL geht zurück

Mehr

Kapitel 5 Dr. Jérôme Kunegis. SQL: Grundlagen. WeST Institut für Web Science & Technologien

Kapitel 5 Dr. Jérôme Kunegis. SQL: Grundlagen. WeST Institut für Web Science & Technologien Kapitel 5 Dr. Jérôme Kunegis SQL: Grundlagen WeST Institut für Web Science & Technologien Lernziele Kenntnis der Grundkonzepte von SQL Fähigkeit zur praktischen Anwendung von einfachen SQL-Anweisungen

Mehr

Motivation. Formale Grundlagen der Informatik 1 Kapitel 19. Syntax & Semantik. Motivation - Beispiel. Motivation - Beispiel

Motivation. Formale Grundlagen der Informatik 1 Kapitel 19. Syntax & Semantik. Motivation - Beispiel. Motivation - Beispiel Motivation Formale Grundlagen der Informatik 1 Kapitel 19 & Die ist eine Erweiterung der Aussagenlogik. Sie hat eine größere Ausdrucksstärke und erlaub eine feinere Differenzierung. Ferner sind Beziehungen/Relationen

Mehr

das neue corporate design der Stadt aalen

das neue corporate design der Stadt aalen inhalt das neue corporate design der Stadt aalen Das neue Corporate Design der Stadt Aalen Seite 1 inhalt 1 wort-bild-marke 2 typografie 3 farbklima 4 Stilelement band 5 Anwendungen Das neue Corporate

Mehr

Theoretische Informatik SS 03 Übung 11

Theoretische Informatik SS 03 Übung 11 Theoretische Informatik SS 03 Übung 11 Aufgabe 1 Zeigen Sie, dass es eine einfachere Reduktion (als die in der Vorlesung durchgeführte) von SAT auf 3KNF-SAT gibt, wenn man annimmt, dass die Formel des

Mehr

Lösungsvorschläge Blatt Z1

Lösungsvorschläge Blatt Z1 Theoretische Informatik Departement Informatik Prof. Dr. Juraj Hromkovič http://www.ita.inf.ethz.ch/theoinf16 Lösungsvorschläge Blatt Z1 Zürich, 2. Dezember 2016 Lösung zu Aufgabe Z1 Wir zeigen L qi /

Mehr

Aussagenlogik zu wenig ausdrucksstark für die meisten Anwendungen. notwendig: Existenz- und Allaussagen

Aussagenlogik zu wenig ausdrucksstark für die meisten Anwendungen. notwendig: Existenz- und Allaussagen Prädikatenlogik 1. Stufe (kurz: PL1) Aussagenlogik zu wenig ausdrucksstark für die meisten Anwendungen notwendig: Existenz- und Allaussagen Beispiel: 54 Syntax der Prädikatenlogik erster Stufe (in der

Mehr

Wissensrepräsentation und -verarbeitung in Logiken. bereinigt Pränex Skolem ( -Eliminierung) Klausel (Menge von Klauseln, Notation ohne Quantoren)

Wissensrepräsentation und -verarbeitung in Logiken. bereinigt Pränex Skolem ( -Eliminierung) Klausel (Menge von Klauseln, Notation ohne Quantoren) Was bisher geschah Wissensrepräsentation und -verarbeitung in Logiken klassische Aussagenlogik klassische Prädikatenlogik: Wiederholung Syntax, Semantik Normalformen: bereinigt Pränex Skolem ( -Eliminierung)

Mehr

Es ist kalt. Warme Kleidung

Es ist kalt. Warme Kleidung 17. Thema: Kleidung 1 Es ist kalt Ich ziehe einen Mantel an. Ich ziehe eine Jacke an. Ich ziehe einen Pullover an. Ich ziehe Stiefel an. Warme Kleidung 2 Ich ziehe Handschuhe an. Ich setze eine Haube auf.

Mehr

DPaper Papier als digitales Speichermedium

DPaper Papier als digitales Speichermedium DPaper Papier als digitales Speichermedium Blah blah blah blah Sebastian Muszytowski Lars Stoltenow Chaosdorf 30. Juli 2010 Teil I Barcodes von Sebastian Muszytowski Was ist ein Barcode? Graphischer Datenspeicher

Mehr

3. Das Relationale Datenmodell

3. Das Relationale Datenmodell 3. Das Relationale Datenmodell Das Relationale Datenmodell geht zurück auf Codd (1970): E. F. Codd: A Relational Model of Data for Large Shared Data Banks. Comm. of the ACM 13(6): 377-387(1970) DBMS wie

Mehr

Aufgabe - Fortsetzung

Aufgabe - Fortsetzung Aufgabe - Fortsetzung NF: Nicht-Formel F: Formel A: Aussage x :( y : Q(x, y) R(x, y)) z :(Q(z, x) R(y, z)) y :(R(x, y) Q(x, z)) x :( P(x) P(f (a))) P(x) x : P(x) x y :((P(y) Q(x, y)) P(x)) x x : Q(x, x)

Mehr

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Datenbanksysteme I

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Datenbanksysteme I SQL SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R VII-1 Beispielrelationen Filiale ( Name Leiter Stadt Einlagen ) Konto ( KontoNr KundenNr FilialName Saldo ) Kredit

Mehr

Logik für Informatiker

Logik für Informatiker Vorlesung Logik für Informatiker 7. Aussagenlogik Analytische Tableaus Bernhard Beckert Universität Koblenz-Landau Sommersemester 2006 Logik für Informatiker, SS 06 p.1 Der aussagenlogische Tableaukalkül

Mehr

Grundzüge der Spieltheorie

Grundzüge der Spieltheorie Grundzüge der Spieltheorie Prof. Dr. Stefan Winter Ruhr-Universität Bochum Begleitmaterialien zur Vorlesung sind abrufbar unter: http://www.rub.de/spieltheorie 1 Die folgende Vorlesungsaufzeichnung und

Mehr

9. Einführung in Datenbanken

9. Einführung in Datenbanken 9. Einführung in Datenbanken 9.1 Motivation und einführendes Beispiel 9.2 Modellierungskonzepte der realen Welt 9.3 Anfragesprachen (Query Languages) 9.1 Motivation und einführendes Beispiel Datenbanken

Mehr

Binäre Suchbäume (binary search trees, kurz: bst)

Binäre Suchbäume (binary search trees, kurz: bst) Binäre Suchbäume (binary search trees, kurz: bst) Datenstruktur zum Speichern einer endlichen Menge M von Zahlen. Genauer: Binärbaum T mit n := M Knoten Jeder Knoten v von T ist mit einer Zahl m v M markiert.

Mehr

Übungen zur Vorlesung Informationssysteme - Blatt 5

Übungen zur Vorlesung Informationssysteme - Blatt 5 Übungen zur Vorlesung Informationssysteme - Blatt 5 Übungsblatt Nr.5 Informationssysteme - WS 04/05 1 a) Welche Kinos gibt es in Bonn? SELECT Name, Adresse FROM kino WHERE Telefon LIKE 0228% ; Übungsblatt

Mehr

I. Aussagenlogik. Aussagenlogik untersucht Verknüpfungen wie "und", "oder", "nicht", "wenn... dann" zwischen atomaren und komplexen Sätzen.

I. Aussagenlogik. Aussagenlogik untersucht Verknüpfungen wie und, oder, nicht, wenn... dann zwischen atomaren und komplexen Sätzen. I. Aussagenlogik 2.1 Syntax Aussagenlogik untersucht Verknüpfungen wie "und", "oder", "nicht", "wenn... dann" zwischen atomaren und komplexen Sätzen. Sätze selbst sind entweder wahr oder falsch. Ansonsten

Mehr

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo. Mengenvergleiche: Mehr Möglichkeiten als der in-operator bietet der θany und der θall-operator, also der Vergleich mit irgendeinem oder jedem Tupel der Unteranfrage. Alle Konten außer das, mit dem größten

Mehr

Logic in a Nutshell. Christian Liguda

Logic in a Nutshell. Christian Liguda Logic in a Nutshell Christian Liguda Quelle: Kastens, Uwe und Büning, Hans K., Modellierung: Grundlagen und formale Methoden, 2009, Carl Hanser Verlag Übersicht Logik - Allgemein Aussagenlogik Modellierung

Mehr

Terme stehen für Namen von Objekten des Diskursbereichs (Subjekte, Objekte des natürlichsprachlichen Satzes)

Terme stehen für Namen von Objekten des Diskursbereichs (Subjekte, Objekte des natürlichsprachlichen Satzes) Prädikatenlogik Man kann den natürlichsprachlichen Satz Die Sonne scheint. in der Prädikatenlogik beispielsweise als logisches Atom scheint(sonne) darstellen. In der Sprache der Prädikatenlogik werden

Mehr

Views in SQL. 2 Anlegen und Verwenden von Views 2

Views in SQL. 2 Anlegen und Verwenden von Views 2 Views in SQL Holger Jakobs bibjah@bg.bib.de, holger@jakobs.com 2010-07-15 Inhaltsverzeichnis 1 Wozu dienen Views? 1 2 Anlegen und Verwenden von Views 2 3 Schreibfähigkeit von Views 3 3.1 Views schreibfähig

Mehr

5 Logische Programmierung

5 Logische Programmierung 5 Logische Programmierung Logik wird als Programmiersprache benutzt Der logische Ansatz zu Programmierung ist (sowie der funktionale) deklarativ; Programme können mit Hilfe zweier abstrakten, maschinen-unabhängigen

Mehr

Datenbanksysteme. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2015/16. smichel@cs.uni-kl.de

Datenbanksysteme. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2015/16. smichel@cs.uni-kl.de Datenbanksysteme Wintersemester 2015/16 Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern smichel@cs.uni-kl.de Verschachtelte (Engl. Nested) Anfragen Wieso und wo gibt es verschachtelte Anfragen? ˆ Unteranfragen

Mehr

Grundlagen der Theoretischen Informatik - Sommersemester 2012. Übungsblatt 1: Lösungsvorschläge

Grundlagen der Theoretischen Informatik - Sommersemester 2012. Übungsblatt 1: Lösungsvorschläge Lehrstuhl für Softwaretechnik und Programmiersprachen Professor Dr. Michael Leuschel Grundlagen der Theoretischen Informatik - Sommersemester 2012 Übungsblatt 1: Lösungsvorschläge Disclaimer: Bei Folgendem

Mehr

Speicherung von XML in (objekt-)relationalen Datenbanken. Burkhard Schäfer

Speicherung von XML in (objekt-)relationalen Datenbanken. Burkhard Schäfer Speicherung von XML in (objekt-)relationalen Datenbanken Burkhard Schäfer Übersicht Motivation Anforderungen Ansätze modellorientiert strukturorientiert Zusammenfassung Motivation Warum XML in Datenbanken

Mehr

Grundlagen: Datenbanken WS 15/16

Grundlagen: Datenbanken WS 15/16 Grundlagen: Datenbanken WS 15/16 2. Zentralübung / Wiederholung / Fragestunde Harald Lang gdb@in.tum.de Diese Folien finden Sie online. Die Mitschrift erhalten Sie im Anschluss. Termine Klausur 24.02.2016,

Mehr

Theorie der Informatik

Theorie der Informatik Theorie der Informatik 6. Formale Sprachen und Grammatiken Malte Helmert Gabriele Röger Universität Basel 17. März 2014 Einführung Beispiel: Aussagenlogische Formeln Aus dem Logikteil: Definition (Syntax

Mehr

Relationale Datenbanken

Relationale Datenbanken Datenbanksysteme Relationale Datenbanken Relationales Datenmodell Deklarationen Anfragen! Entwurf, z.b. mit Entity Relationship Model! Deklaration! Speichern der Daten! Hauptspeicher, Cache, virtueller

Mehr

Materialienpaket für Deutsch in der 5. Klasse GI Georgien&GDV/September Das ABC Das ABC-Lied

Materialienpaket für Deutsch in der 5. Klasse GI Georgien&GDV/September Das ABC Das ABC-Lied Thema: Das deutsche Alphabet Inhalt: Das ABC Das ABC-Lied http://www.youtube.com/watch?v=zxqxeymmc0eö http://www.youtube.com/watch?v=uxsslcayfrk Buchstabenkärtchen Laufdiktat Wortgitter Deutsche Namen

Mehr

Teil 7. Grundlagen Logik

Teil 7. Grundlagen Logik Teil 7 Grundlagen Logik Was ist Logik? etymologische Herkunft: griechisch bedeutet Wort, Rede, Lehre (s.a. Faust I ) Logik als Argumentation: Alle Menschen sind sterblich. Sokrates ist ein Mensch. Also

Mehr

Klausur zur Vorlesung Datenbanksysteme I

Klausur zur Vorlesung Datenbanksysteme I Prof. Dr. W. Kießling 30.01.2002 Lehrstuhl für Datenbanken und Informationssysteme Universität Augsburg Klausur zur Vorlesung Datenbanksysteme I Wintersemester 2001/2002 Name Vorname Matrikelnummer Aufgabe

Mehr

Architektur eines DBMS Logische Optimierung

Architektur eines DBMS Logische Optimierung Vorlesung Datenbanksysteme vom 16.11.2015 Anfragebearbeitung 1 Architektur eines DBMS Logische Optimierung Physische Optimierung Kostenmodelle + Tuning Architektur eines DBMS SW-Komponenten der Anfragebearbeitung

Mehr

Vorlesung Datenbankmanagementsysteme

Vorlesung Datenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme SQL zur Datenanalyse & Einführung Online Analytical Processing (OLAP) (auf Basis von Oracle) Vorlesung Datenbankmanagementsysteme SQL zur Datenanalyse M. Lange, S.

Mehr

Null-Werte in Relationalen Datenbanken

Null-Werte in Relationalen Datenbanken Seminar: Imperfektion in Datenbanken WS03/04 Null-Werte in Relationalen Datenbanken Thomas Bierhance Einführung Null-Werte in DBen sind notwendiges Übel, da... (1) das Wissen über die tatsächliche Welt

Mehr

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R 1.008. Vorlesung #5. SQL (Teil 3)

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R 1.008. Vorlesung #5. SQL (Teil 3) Vorlesung #5 SQL (Teil 3) Fahrplan Besprechung der Übungsaufgaben Rekursion Rekursion in SQL-92 Rekursion in DBMS- Dialekten (Oracle und DB2) Views (Sichten) - gespeicherte Abfragen Gewährleistung der

Mehr

Probabilistische Datenbanken

Probabilistische Datenbanken Probabilistische Datenbanken Seminar Intelligente Datenbanken AG Intelligente Datenbanken Prof. Dr. Rainer Manthey 26.04.05 Maarten van Hoek - 1 - Inhaltsverzeichnis 1.0 Einleitung...3 2.0 Modell probabilistischer

Mehr

DAS KLJB-LOGO GESTALTUNGSGRUNDSÄTZE

DAS KLJB-LOGO GESTALTUNGSGRUNDSÄTZE DAS KLJB-LOGO GESTALTUNGSGRUNDSÄTZE KLJB-LOGO Die Gestaltungsgrundsätze im Überblick DAS LOGO Der erste Eindruck zählt Seite 4 Anforderungen Seite 5 Identität Seite 6 Vermaßt Seite 7 FARBE Farbdefinitionen

Mehr

Kalkülteil. Structured Query Language, SQL. 1. Semantik: erzeuge alle Kombinationen von Tupeln

Kalkülteil. Structured Query Language, SQL. 1. Semantik: erzeuge alle Kombinationen von Tupeln Structured Query Language, SQL vom American National Standards Institute, ANSI, genormte Datenbanksprache. enthält eine Teilsprache, die eine relationale Anfragesprache ist, Mischung von tupelorientierten

Mehr

Kapitel 1.3. Normalformen aussagenlogischer Formeln und die Darstellbarkeit Boolescher Funktionen durch aussagenlogische Formeln

Kapitel 1.3. Normalformen aussagenlogischer Formeln und die Darstellbarkeit Boolescher Funktionen durch aussagenlogische Formeln Kapitel 1.3 Normalformen aussagenlogischer Formeln und die Darstellbarkeit Boolescher Funktionen durch aussagenlogische Formeln Mathematische Logik (WS 2011/12) Kapitel 1.3: Normalformen 1/ 29 Übersicht

Mehr

Datenbanken: Relationales Datenbankmodell RDM

Datenbanken: Relationales Datenbankmodell RDM Das RDM wurde in den 70'er Jahren von Codd entwickelt und ist seit Mitte der 80'er Jahre definierter Standard für Datenbanksysteme! Der Name kommt vom mathematischen Konzept einer Relation: (Sind A, B

Mehr

Au f g a b e s t e l l u n g

Au f g a b e s t e l l u n g GRUPPE 3l 1 Das Projekt Au f g a b e s t e l l u n g Fünf Banner für den Bauzaun der neuen Stadthalle 1 Das Projekt Au f g a b e s t e l l u n g Fünf Banner für den Bauzaun der neuen Stadthalle Thema:

Mehr

3. Relationen Erläuterungen und Schreibweisen

3. Relationen Erläuterungen und Schreibweisen 3. Relationen Eine Relation ist allgemein eine Beziehung, die zwischen Dingen bestehen kann. Relationen im Sinne der Mathematik sind ausschließlich diejenigen Beziehungen, bei denen stets klar ist, ob

Mehr

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de 08 Datenbanken Übung SQL Einführung Eckbert Jankowski www.iit.tu-cottbus.de Datenmodell (Wiederholung, Zusammenfassung) Objekte und deren Eigenschaften definieren Beziehungen zwischen den Objekten erkennen/definieren

Mehr

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.

Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit. Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit. PRÜFUNG AUS DATENMODELLIERUNG (184.685) GRUPPE A MUSTERLÖSUNG 20.03.2015 Matrikelnr.

Mehr

Datenbanksysteme Vorlesung vom noch Kapitel 7: SQL. Oliver Vornberger. Institut für Informatik Universität Osnabrück

Datenbanksysteme Vorlesung vom noch Kapitel 7: SQL. Oliver Vornberger. Institut für Informatik Universität Osnabrück Datenbanksysteme 2009 Vorlesung vom 19.05.2009 noch Kapitel 7: SQL Oliver Vornberger Institut für Informatik Universität Osnabrück SQL: Self Join 15.) Liste die Namen der Assistenten, die für denselben

Mehr

Logik für Informatiker

Logik für Informatiker Logik für Informatiker 2. Aussagenlogik Teil 3 30.04.2012 Viorica Sofronie-Stokkermans Universität Koblenz-Landau e-mail: sofronie@uni-koblenz.de 1 Letztes Mal Aussagenlogik Syntax: welche Formeln? Semantik:

Mehr

Grundlagen Datenbanken Sommersemester 2008

Grundlagen Datenbanken Sommersemester 2008 Rechnerübung SQL Installation SQL Server: SQLite ist eine SQL Datenbank, die keine Installation erfordert und direkt über die Kommandozeile angesprochen werden kann. Geht auf http://www.sqlite.org/download.html

Mehr

Mai 2006. Hauptseminar: Nichtrelationale Datenbanken Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln

Mai 2006. Hauptseminar: Nichtrelationale Datenbanken Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln Hauptseminar: Nichtrelationale Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln Mai 2006 Was ist eine Datenbank? Erweiterung relationaler um eine Deduktionskomponente Diese

Mehr

Das SQL-Schlüsselwort ALL entspricht dem Allquantor der Prädikatenlogik

Das SQL-Schlüsselwort ALL entspricht dem Allquantor der Prädikatenlogik Beispielaufgaben Informationssysteme erstellt von Fabian Rump zur IS Vorlesung 2009/10 1 Multiple Choice Aussage richtig falsch Eine SQL-Abfrage beginnt immer mit dem Schlüsselwort SELECT Eine Datenbank

Mehr

Prüfungsprotokoll Kurs 1825 Logik für Informatiker. Studiengang: MSc. Informatik Prüfer: Prof. Dr. Heinemann Termin: Januar 2015

Prüfungsprotokoll Kurs 1825 Logik für Informatiker. Studiengang: MSc. Informatik Prüfer: Prof. Dr. Heinemann Termin: Januar 2015 Prüfungsprotokoll Kurs 1825 Logik für Informatiker Studiengang: MSc. Informatik Prüfer: Prof. Dr. Heinemann Termin: Januar 2015 1. Aussagenlogik Alphabet und AS gegeben, wie sind die Aussagenlogischen

Mehr

Datenbankentwurf. 4.2 Logischer Entwurf. Kapitel 4. ER-Modell. Umsetzung. Entwurfsdokumentation. relationales Modell. Verbesserung

Datenbankentwurf. 4.2 Logischer Entwurf. Kapitel 4. ER-Modell. Umsetzung. Entwurfsdokumentation. relationales Modell. Verbesserung 4.2 Logischer Entwurf Datenbankentwurf 4.2 Logischer Entwurf 2002 Prof. Dr. Rainer Manthey Informationssysteme Logischer Entwurf: Einordnung Entwurfsdokumentation logische Strukturen "auf dem Papier" konzeptueller

Mehr

Aufgabe 1: [Logische Modellierung]

Aufgabe 1: [Logische Modellierung] Aufgabe 1: [Logische Modellierung] a) Entwerfen Sie für das von Ihnen entworfene Modell aus Aufgabe 2 des 1. Übungsblattes ein Star-Schema. b) Entwerfen Sie für das vorangegangene Modell einen Teil eines

Mehr

Datenbanken - Wiederholung. Norbert Fuhr

Datenbanken - Wiederholung. Norbert Fuhr Datenbanken - Wiederholung Norbert Fuhr Einführung Welches sind typische Probleme bei der Informationsverarbeitung ohne DBMS? Welche Abstraktionsebenen unterscheidet man bei einem DBMS? Was sind die Vorteile

Mehr

Design Theorie für relationale Datenbanken

Design Theorie für relationale Datenbanken Design Theorie für relationale Datenbanken Design von relationalen Datenbanken alternativen Datenabhängigkeiten Normalisierung Ziel: automatisches Datenbankdesign IX-1 Schlechtes Datenbank Design Frage:

Mehr

cs241: Datenbanken mit Übungen HS 2011

cs241: Datenbanken mit Übungen HS 2011 UNIVERSITÄT BASEL Prof. Dr. Heiko Schuldt MSc. Nenad Stojnić BSc. Ivan Giangreco BSc. Florian Lindörfer cs241: Datenbanken mit Übungen HS 2011 Übung 5 Abgabe bis: 4.11.2011 Hinweise: Modalitäten der Abgabe:

Mehr

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung 6. Datenintegrität Motivation Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung nur sinnvolle Attributwerte (z.b. keine negativen Semester) Abhängigkeiten

Mehr

9.2 Invertierbare Matrizen

9.2 Invertierbare Matrizen 34 9.2 Invertierbare Matrizen Die Division ist als Umkehroperation der Multiplikation definiert. Das heisst, für reelle Zahlen a 0 und b gilt b = a genau dann, wenn a b =. Übertragen wir dies von den reellen

Mehr

1. Übungsblatt 3.0 VU Datenmodellierung

1. Übungsblatt 3.0 VU Datenmodellierung 1. Übungsblatt 3.0 VU Datenmodellierung 5. März 2014 Allgemeines In diesem Übungsteil werden Sie den Entwurf einer kleinen Datenbank üben, deren Überführung in das Relationenschema, sowie die relationale

Mehr

Konjunktive und disjunktive Normalformen

Konjunktive und disjunktive Normalformen Konjunktive und disjunktive Normalformen Nachdem gesprochen wurde, wie man Boolesche Terme unter einer Belegung der Variablen interpretiert und dass somit jeder Boolesche Term eine Boolesche Funktion repräsentiert,

Mehr

SQL: statische Integrität

SQL: statische Integrität SQL: statische Integrität.1 SQL: statische Integrität Im allgemeinen sind nur solche Instanzen einer Datenbank erlaubt, deren Relationen die der Datenbank bekannten Integritätsbedingungen erfüllen. Integritätsbedingungen

Mehr

Hilbert-Kalkül (Einführung)

Hilbert-Kalkül (Einführung) Hilbert-Kalkül (Einführung) Es gibt viele verschiedene Kalküle, mit denen sich durch syntaktische Umformungen zeigen läßt, ob eine Formel gültig bzw. unerfüllbar ist. Zwei Gruppen von Kalkülen: Kalküle

Mehr

Beispiel. Bsp.: Betrachte Schlussweise in: (3) folgt aus (1) und (2), siehe z.b. Resolutionsregel. was ist mit folgender Schlußweise:

Beispiel. Bsp.: Betrachte Schlussweise in: (3) folgt aus (1) und (2), siehe z.b. Resolutionsregel. was ist mit folgender Schlußweise: Theoretische Informatik: Logik, M. Lange, FB16, Uni Kassel: 5.4 Prädikatenlogik mit Gleichheit Resolution 192 Beispiel Bsp.: Betrachte Schlussweise in: 1 Wenn es regnet, dann wird die Straße nass. R N

Mehr

Bibliografische Informationen digitalisiert durch http://d-nb.info/995021198

Bibliografische Informationen digitalisiert durch http://d-nb.info/995021198 Auf einen Blick 1 Einleitung 15 2 Datenbankentwurf 23 3 Datenbankdefinition 43 4 Datensätze einfügen (INSERT INTO) 95 5 Daten abfragen (SELECT) 99 6 Daten aus mehreren Tabellen abfragen (JOIN) 143 7 Unterabfragen

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2009 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

Datenbanksysteme I. Klausur zum Praktikum. Mehrere Professoren prüfen mit genau einem Beisitzer genau einen Studenten.

Datenbanksysteme I. Klausur zum Praktikum. Mehrere Professoren prüfen mit genau einem Beisitzer genau einen Studenten. Lehrstuhl für Datenbanken und Informationssysteme Wintersemester 1999/2000 Universität Augsburg, Institut für Informatik 25. Februar 2000 Prof. Dr. Werner Kießling A. Leubner, M. Wagner Datenbanksysteme

Mehr

4.1 SQL. Wichtige skalare Datentypen

4.1 SQL. Wichtige skalare Datentypen 4. Basierend auf dem Tupelkalkül und der relationalen Algebra wurden mit dem Aufkommen relationaler DBMS auch spezielle Sprachen entwickelt. SQL ist die derzeit am weitesten verbreitete Anfragesprache

Mehr

Es wird empfohlen folgendes Material anzusehen:

Es wird empfohlen folgendes Material anzusehen: Übung zur Vorlesung "Einführung in die Informatik für Hörer anderer Fachrichtungen (WZW)" IN8003, SS 2011 Prof. Dr. J. Schlichter Dr. Georg Groh, Dipl.Inform. Dipl.Geogr. Jan Herrmann, Florian Schulze

Mehr

FachPraktikum 1590 Erweiterbare Datenbanksysteme. Aufgaben Phase 1

FachPraktikum 1590 Erweiterbare Datenbanksysteme. Aufgaben Phase 1 FachPraktikum 1590 Erweiterbare Datenbanksysteme Aufgaben Phase 1 Wintersemester 2004/2005 Ralf Hartmut Güting, Dirk Ansorge, Thomas Behr, Markus Spiekermann Praktische Informatik IV, Fernuniversität Hagen

Mehr

(Man sagt dafür auch, dass die Teilmenge U bezüglich der Gruppenoperationen abgeschlossen sein muss.)

(Man sagt dafür auch, dass die Teilmenge U bezüglich der Gruppenoperationen abgeschlossen sein muss.) 3. Untergruppen 19 3. Untergruppen Nachdem wir nun einige grundlegende Gruppen kennengelernt haben, wollen wir in diesem Kapitel eine einfache Möglichkeit untersuchen, mit der man aus bereits bekannten

Mehr

Aufgabensammlung SQL SW4 1. Einfache Anfragen

Aufgabensammlung SQL SW4 1. Einfache Anfragen Aufgabensammlung SQL SW4 1. Einfache Anfragen Buch: Kapitel 4.6 und 4.7. Datenbank: Die folgenden Anfragen beziehen sich auf die Universitätsdatenbank des Buches. Alle Umlaute werden umschrieben (hören

Mehr

A2.3 Lineare Gleichungssysteme

A2.3 Lineare Gleichungssysteme A2.3 Lineare Gleichungssysteme Schnittpunkte von Graphen Bereits weiter oben wurden die Schnittpunkte von Funktionsgraphen mit den Koordinatenachsen besprochen. Wenn sich zwei Geraden schneiden, dann müssen

Mehr

Jahresplanung Deutsch Klasse 1

Jahresplanung Deutsch Klasse 1 Grundschule Fischbeck Jahresplanung Deutsch Klasse 1 Zeitraum Erwartete Kompetenzen Kenntnisse und Fertigkeiten Bezug zum Lehrwerk Sprechen und Zuhören Gesprächsregeln kennen und anwenden Sprechen miteinander

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2015 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

6. Sichten, Integrität und Zugriffskontrolle. Vorlesung "Informa=onssysteme" Sommersemester 2015

6. Sichten, Integrität und Zugriffskontrolle. Vorlesung Informa=onssysteme Sommersemester 2015 6. Sichten, Integrität und Zugriffskontrolle Vorlesung "Informa=onssysteme" Sommersemester 2015 Überblick Sichten Integritätsbedingungen Zugriffsrechte SQL- Schema und SQL- Katalog Das Informa=onsschema

Mehr

Objektrelationale und erweiterbare Datenbanksysteme

Objektrelationale und erweiterbare Datenbanksysteme Objektrelationale und erweiterbare Datenbanksysteme Erweiterbarkeit SQL:1999 (Objekt-relationale Modellierung) In der Vorlesung werden nur die Folien 1-12 behandelt. Kapitel 14 1 Konzepte objekt-relationaler

Mehr

Einführung in die Informatik 2

Einführung in die Informatik 2 Einführung in die Informatik 2 Mathematische Grundbegriffe Sven Kosub AG Algorithmik/Theorie komplexer Systeme Universität Konstanz E 202 Sven.Kosub@uni-konstanz.de Sprechstunde: Freitag, 12:30-14:00 Uhr,

Mehr

Einführung in die Wirtschaftsinformatik Kapitel 4: Relationale Datenbanksprachen: SQL

Einführung in die Wirtschaftsinformatik Kapitel 4: Relationale Datenbanksprachen: SQL Einführung in die Wirtschaftsinformatik Kapitel 4: Relationale Datenbanksprachen: SQL Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence

Mehr

Prolog basiert auf Prädikatenlogik

Prolog basiert auf Prädikatenlogik Software-Technologie Software-Systeme sind sehr komplex. Im Idealfall erfolgt die Programmierung problemorientiert, während die notwendige Übertragung in ausführbare Programme automatisch erfolgt. Prolog-Philosophie:

Mehr

2 Mengen und Abbildungen

2 Mengen und Abbildungen 2.1 Mengen Unter einer Menge verstehen wir eine Zusammenfassung von Objekten zu einem Ganzen. Die Objekte heiÿen Elemente. Ist M eine Menge und x ein Element von M so schreiben wir x M. Wir sagen auch:

Mehr

Kapitel 3: Das relationale DB-Modell & SQL

Kapitel 3: Das relationale DB-Modell & SQL Vorlesung " WS 98/99 Kapitel 3: Das relationale DB-Modell & SQL Relationales Datenmodell (RDM) Netzwerk- und Hierarchisches Datenmodell (NDM, HDM) Objektorientierte Datenmodelle (OODM) Objektrelationale

Mehr

Schlüssel bei temporalen Daten im relationalen Modell

Schlüssel bei temporalen Daten im relationalen Modell Schlüssel bei temporalen Daten im relationalen Modell Gesine Mühle > Präsentation > Bilder zum Inhalt zurück weiter 322 Schlüssel im relationalen Modell Schlüssel bei temporalen Daten im relationalen Modell

Mehr

Logische Optimierung. Im Allgemeinen wird keine optimale Lösung erzielt, sondern nur eine Verbesserung. Logische Optimierung

Logische Optimierung. Im Allgemeinen wird keine optimale Lösung erzielt, sondern nur eine Verbesserung. Logische Optimierung Logische Optimierung Höhere, nichtprozedurale Abfragesprachen (SQL, QBE,...) verlangen keine Kenntnisse des Benutzers über die Implementierung, müssen aber in prozedurale Form (z. B. Relationenalgebra)

Mehr

Kapitel 1.3. Normalformen aussagenlogischer Formeln. Mathematische Logik (WS 2010/11) Kapitel 1.3: Normalformen 1 / 1

Kapitel 1.3. Normalformen aussagenlogischer Formeln. Mathematische Logik (WS 2010/11) Kapitel 1.3: Normalformen 1 / 1 Kapitel 1.3 Normalformen aussagenlogischer Formeln Mathematische Logik (WS 2010/11) Kapitel 1.3: Normalformen 1 / 1 Boolesche Formeln, Literale und Klauseln Eine Boolesche Formel ist eine aussagenlogische

Mehr

Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 8

Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 8 Prof. Dr. Wilhelm Schäfer Paderborn, 8. Dezember 2014 Christian Brenner Tristan Wittgen Besprechung der Aufgaben: 15. - 18. Dezember 2014 Übungsaufgaben zur Vorlesung Modellbasierte Softwareentwicklung

Mehr