Acknowledgments. Datenmodellierung VU , WS Das Relationale Modell: Begriffsklärung. Übersicht. Das relationale Modell
|
|
- Leon Johannes Diefenbach
- vor 6 Jahren
- Abrufe
Transkript
1 Das relationale Modell Das relationale Modell Acknowledgments Datenmodellierung VU , WS 2015 Das relationale Modell Sebastian Skritek Die Folien sind eine kleine Erweiterung der Folien von Katrin Seyr. Institut für Informationssysteme Technische Universität Wien Sebastian Skritek Seite 1 Sebastian Skritek Seite 2 Das relationale Modell Das relationale Modell 1. Begriffsklärung Übersicht Das Relationale Modell: Begriffsklärung Das relationale Modell Umsetzung eines konzeptuellen in ein logisches Schema Übersetzung von EER in relationales Schema Eigenschaften relationaler Schemata Datenabfragesprachen Relationale Algebra Relationenkalkül Ausdruckskraft von Abfragesprachen Telefonbuch : string Adresse: string TelNr: integer Mickey Mouse Main Street 4711 Minnie Mouse Broadway Donald Duck Highway Sebastian Skritek Seite 3 Sebastian Skritek Seite 4
2 Das relationale Modell 1. Begriffsklärung Das relationale Modell 1. Begriffsklärung Das Relationale Modell: Begriffsklärung Das Relationale Modell: Begriffsklärung Telefonbuch : string Adresse: string TelNr: integer Schema Telefonbuch : string Adresse: string TelNr: integer Schema Mickey Mouse Main Street 4711 Mickey Mouse Main Street 4711 Minnie Mouse Broadway Donald Duck Highway Minnie Mouse Broadway Donald Duck Highway Ausprägung Sebastian Skritek Seite 4 Sebastian Skritek Seite 4 Das relationale Modell 1. Begriffsklärung Das relationale Modell 1. Begriffsklärung Das Relationale Modell: Begriffsklärung Das Relationale Modell: Begriffsklärung Attribute Telefonbuch : string Adresse: string TelNr: integer Schema Telefonbuch : string Adresse: string TelNr: integer Schema Mickey Mouse Main Street 4711 Mickey Mouse Main Street 4711 Minnie Mouse Broadway Donald Duck Highway Ausprägung Minnie Mouse Broadway Donald Duck Highway Ausprägung Sebastian Skritek Seite 4 Sebastian Skritek Seite 4
3 Das relationale Modell 1. Begriffsklärung Das relationale Modell 1. Begriffsklärung Das Relationale Modell: Begriffsklärung Das Relationale Modell: Begriffsklärung Attribute Attribute Telefonbuch : string Adresse: string TelNr: integer Schema Telefonbuch : string Adresse: string TelNr: integer Schema Tupel (Zeile) Mickey Mouse Main Street 4711 Minnie Mouse Broadway Donald Duck Highway Ausprägung Tupel (Zeile) Mickey Mouse Main Street 4711 Minnie Mouse Broadway Donald Duck Highway Ausprägung Feld Sebastian Skritek Seite 4 Sebastian Skritek Seite 4 Das relationale Modell 1. Begriffsklärung Das relationale Modell 1. Begriffsklärung Das Relationale Modell: Begriffsklärung Das Relationale Modell: Begriffsklärung Schema: Telefonbuch: {[: string, Adresse: string, Telefonnr:integer]} Schema: Telefonbuch: {[: string, Adresse: string, Telefonnr:integer]} Ausprägung { ( Mickey Mouse, Main Street, 4711), ( Minnie Mouse, Broadway, 94725), ( Donald Duck, Highway, 95672) } Ausprägung { ( Mickey Mouse, Main Street, 4711), ( Minnie Mouse, Broadway, 94725), ( Donald Duck, Highway, 95672) } ACHTUNG: Keine Ordnung! Sebastian Skritek Seite 5 Sebastian Skritek Seite 5
4 Das relationale Modell 1. Begriffsklärung Das relationale Modell 1. Begriffsklärung Relationes Modell: Begriffsklärung Relationes Modell: Begriffsklärung Definition (Relation) Seien D 1, D 2,, D n Domänen (Wertebereiche). Eine Relation (Tabelle) R über D 1, D 2,, D n ist eine Teilmenge des kartesischen Produkts der Domänen: R string string integer R D 1 D n n Stelligkeit der Relation Relationale Datenbank: Menge von Relationen Sebastian Skritek Seite 6 Sebastian Skritek Seite 7 Das relationale Modell 1. Begriffsklärung Das relationale Modell 1. Begriffsklärung Relationes Modell: Begriffsklärung Relationes Modell: Begriffsklärung R string string integer Definition (Tupel) Ein Tupel t (=Zeile) ist ein Element der Relation Mickey Mouse Main Street 4711 Minnie Mouse Broadway Donald Duck Highway t R t = ( Mickey Mouse, Main Street, 4711) Sebastian Skritek Seite 7 Sebastian Skritek Seite 8
5 Das relationale Modell 1. Begriffsklärung Das relationale Modell 1. Begriffsklärung Relationes Modell: Begriffsklärung Schlüssel Definition (Relationenschema) Das Schema einer Relation besteht aus der Relation Liste der Attribute Definition (Schlüssel) Ein Schlüssel ist eine minimale Menge von Attributen, deren Werte ein Tupel eindeutig identifizieren. Rel: {[Attr 1 : dom 1,, Attr n : dom n ]} Telefonbuch: {[: string, Adresse: string, Telefonnr:integer]} Sebastian Skritek Seite 9 Sebastian Skritek Seite 10 Das relationale Modell 1. Begriffsklärung Das relationale Modell 1. Begriffsklärung Schlüssel Begriffsklärung: Fremdschlüssel Definition (Schlüssel) Ein Schlüssel ist eine minimale Menge von Attributen, deren Werte ein Tupel eindeutig identifizieren. Fremdschlüssel Ein Fremdschlüssel ist eine Menge von Attributen welche auf den Schlüssel einer (anderen) Relation verweist. Anmerkung: Im Allgemeinen mehrere Schlüssel möglich. Ein Schlüsselkandidat wird als Primärschlüssel ausgewählt (Kennzeichnung durch Unterstreichung). Raum: {[RaumNr: integer, Bezeichnung: string, Ort: string]} Telefonbuch: {[: string, Adresse: string, Telefonnr:integer]} Telefonbuch: {[: string, Adresse: string, Telefonnr:integer]} Mitarbeiter: {[PNR: int, : string, Raum.RaumNr: integer]} Sebastian Skritek Seite 10 Sebastian Skritek Seite 11
6 Das relationale Modell 2. Von EER zum relationalen Schema Das relationale Modell 2. Von EER zum relationalen Schema Umsetzung eines konzeptuellen Schemas in ein logisches Schema Umsetzung eines konzeptuellen Schemas in ein logisches Schema EER relationales Schema Sebastian Skritek Seite 12 Sebastian Skritek Seite 12 Das relationale Modell 2. Von EER zum relationalen Schema Das relationale Modell 2. Von EER zum relationalen Schema Zusammenfassung: Konzepte Zusammenfassung: Konzepte Entitytypen Attribute Beziehungstypen Schwache Entities Generalisierung Schlüssel schwache Schlüssel Kardinalitäten Sebastian Skritek Seite 13 Sebastian Skritek Seite 13
7 Das relationale Modell 2. Von EER zum relationalen Schema Das relationale Modell 2. Von EER zum relationalen Schema Zusammenfassung: Konzepte Von EER zum relationalen Schema: Unischema (Unischema) Entitytypen Attribute Beziehungstypen Schwache Entities Generalisierung Schlüssel schwache Schlüssel Relationen(schema) Schlüssel Fremdschlüssel MatrNr PersNr Studenten Fachgebiet Semester N N hören prüfen 1 M M N Vorgänger voraussetzen N lesen 1 M Nachfolger VorlNr SWS Titel PersNr Kardinalitäten Assistenten N 1 arbeitenfür Rang Raum Sebastian Skritek Seite 13 Sebastian Skritek Seite 14 Das relationale Modell 2. Von EER zum relationalen Schema 2.1. Entitytypen Relationale Darstellung von Entitytypen Das relationale Modell 2. Von EER zum relationalen Schema 2.1. Entitytypen Relationale Darstellung von Entitytypen E E A 1 A i A i+1 A k A 1 A i A i+1 A k E: {[ A 1 : typ 1,, A i : typ i, A i+1 : typ i+1,, A k : typ k ]} Sebastian Skritek Seite 15 Sebastian Skritek Seite 15
8 Das relationale Modell 2. Von EER zum relationalen Schema 2.1. Entitytypen Unischema (Unischema) Das relationale Modell 2. Von EER zum relationalen Schema 2.1. Entitytypen Relationale Darstellung von Entitytypen MatrNr PersNr Studenten Fachgebiet Semester N N hören prüfen 1 M M N Vorgänger voraussetzen N lesen 1 M Nachfolger VorlNr SWS Titel PersNr Relationale Darstellung der vier Entitytypen aus dem Unischema Studenten: {[MatrNr: integer, : string, Semester: integer]} : {[VorlNr: integer, Titel: string, SWS: integer]} : {[PersNr: integer, : string, Rang: string, Raum: integer]} Assistenten: {[PersNr: integer, : string, Fachgebiet: string]} Assistenten N 1 arbeitenfür Rang Raum Sebastian Skritek Seite 16 Sebastian Skritek Seite 17 Das relationale Modell 2. Von EER zum relationalen Schema 2.2. Beziehungstypen Relationale Darstellung von Beziehungstypen Das relationale Modell 2. Von EER zum relationalen Schema 2.2. Beziehungstypen Relationale Darstellung von Beziehungstypen E 1 A 1 1 E 1 A 1 1 AR 1 A 1 k 1 AR 1 A 1 k 1 R R AR kr A n k n AR kr A n k n E n A n 1 E n A n 1 R : {[E 1.A 1 1,, E 1.A 1 k }{{} 1,, E n.a1,, E n.a n k n, AR 1,, AR kr ]} }{{}}{{} Schlüssel von E 1 Schlüssel von E n Attribute von R n Sebastian Skritek Seite 18 Sebastian Skritek Seite 18
9 Das relationale Modell 2. Von EER zum relationalen Schema 2.2. Beziehungstypen Von EER zum relationalen Schema: Unischema (Unischema) Das relationale Modell 2. Von EER zum relationalen Schema 2.2. Beziehungstypen Relationale Darstellung von Beziehungstypen Relationale Darstellung der Beziehungstypen aus dem Unischema MatrNr Semester N voraussetzen M Vorgänger Nachfolger hören: {[MatrNr: integer, VorlNr: integer]} Studenten N hören M VorlNr SWS lesen: {[PersNr: integer, VorlNr: integer]} arbeitenfür: {[AssiPersNr: integer, ProfPersNr: integer]} PersNr Fachgebiet N prüfen 1 M N lesen 1 Titel PersNr voraussetzen: {[Vorgänger: integer, Nachfolger: integer]} prüfen: {[MatrNr: integer, VorlNr: integer, PersNr: integer, Note: decimal]} Assistenten N 1 arbeitenfür Rang Raum Sebastian Skritek Seite 19 Sebastian Skritek Seite 20 Das relationale Modell 2. Von EER zum relationalen Schema 2.2. Beziehungstypen Relationale Darstellung von Beziehungstypen Das relationale Modell 2. Von EER zum relationalen Schema 2.2. Beziehungstypen Relationale Darstellung von Beziehungstypen Relationale Darstellung der Beziehungstypen aus dem Unischema hören: {[MatrNr: integer, VorlNr: integer]} (N:M) lesen: {[PersNr: integer, VorlNr: integer]} (1:N) arbeitenfür: {[AssiPersNr: integer, ProfPersNr: integer]} (N:1) voraussetzen: {[Vorgänger: integer, Nachfolger: integer]} (N:M) prüfen: {[MatrNr: integer, VorlNr: integer, PersNr: integer, Note: decimal]} (N:M:1) Relationale Darstellung der Beziehungstypen aus dem Unischema hören: {[MatrNr: integer, VorlNr: integer]} (N:M) lesen: {[PersNr: integer, VorlNr: integer]} (1:N) arbeitenfür: {[AssiPersNr: integer, ProfPersNr: integer]} (N:1) voraussetzen: {[Vorgänger: integer, Nachfolger: integer]} (N:M) prüfen: {[MatrNr: integer, VorlNr: integer, PersNr: integer, Note: decimal]} (N:M:1) Schlüssel? Sebastian Skritek Seite 20 Sebastian Skritek Seite 20
10 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen N:M Beziehung (hören) Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen N:M Beziehung (hören) MatrNr Semester Titel SWS VorlNr MatrNr Semester Titel SWS VorlNr Studenten N hören M Studenten N hören M Studenten MatrNr VorlNr Titel Xenokrates 5001 Grundzüge Jonas 5041 Ethik Fichte 5049 Mäeutik Aristoxenos 4052 Logik Carnap 5216 Bioethik Feuerbach Sebastian Skritek Seite 21 Sebastian Skritek Seite 21 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen N:M Beziehung (hören) Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Schlüssel von N:M Beziehungen MatrNr Semester Titel SWS VorlNr Studenten N hören M Schlüssel einer Relation, die aus einer N:M Beziehung entstanden ist, beinhaltet alle Fremdschlüsselattribute der an der Beziehung beteiligten Entities. Studenten hören MatrNr MatrNr VorlNr VorlNr Titel Xenokrates Grundzüge Jonas Ethik Fichte Mäeutik Aristoxenos 4052 Logik Carnap 5216 Bioethik Feuerbach Sebastian Skritek Seite 21 Sebastian Skritek Seite 22
11 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Schlüssel von N:M Beziehungen Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen 1:N Beziehung (lesen) PersNr Rang Raum Titel SWS VorlNr Schlüssel einer Relation, die aus einer N:M Beziehung entstanden ist, beinhaltet alle Fremdschlüsselattribute der an der Beziehung beteiligten Entities. 1 N lesen e hören: {[MatrNr: integer, VorlNr: integer]} (N:M) voraussetzen: {[Vorgänger: integer, Nachfolger: integer]} (N:M) Sebastian Skritek Seite 22 Sebastian Skritek Seite 23 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen 1:N Beziehung (lesen) Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen 1:N Beziehung (lesen) PersNr Rang Raum Titel SWS VorlNr PersNr Rang Raum Titel SWS VorlNr 1 N lesen 1 N lesen lesen PersNrNr VorlNr Titel PersNrNr PersNr VorlNr VorlNr Titel 2125 Sokrates 2126 Russel 2127 Kopernikus 2133 Popper 2134 Augustinus 2136 Curie 5001 Grundzüge 5041 Ethik 5049 Mäeutik 4052 Logik 5216 Bioethik 2125 Sokrates 2126 Russel 2127 Kopernikus 2133 Popper 2134 Augustinus 2136 Curie Grundzüge 5041 Ethik 5049 Mäeutik 4052 Logik 5216 Bioethik Sebastian Skritek Seite 23 Sebastian Skritek Seite 23
12 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Schlüssel von 1:N Beziehungen Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Schlüssel von 1:N Beziehungen Schlüssel einer Relation, die aus einer 1:N Beziehung entstanden ist, beinhaltet jene Fremdschlüsselattribute, die von der N Seite der an der Beziehung beteiligten Entity stammen. Schlüssel einer Relation, die aus einer 1:N Beziehung entstanden ist, beinhaltet jene Fremdschlüsselattribute, die von der N Seite der an der Beziehung beteiligten Entity stammen. e lesen: {[PersNr: integer, VorlNr: integer]} (1:N) Sebastian Skritek Seite 24 Sebastian Skritek Seite 24 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Schlüssel von 1:N Beziehungen Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Schlüssel von 1:N Beziehungen Schlüssel einer Relation, die aus einer 1:N Beziehung entstanden ist, beinhaltet jene Fremdschlüsselattribute, die von der N Seite der an der Beziehung beteiligten Entity stammen. Schlüssel einer Relation, die aus einer 1:N Beziehung entstanden ist, beinhaltet jene Fremdschlüsselattribute, die von der N Seite der an der Beziehung beteiligten Entity stammen. e lesen: {[PersNr: integer, VorlNr: integer]} (1:N) arbeitenfür: {[AssiPersNr: integer, ProfPersNr: integer]} (N:1) e lesen: {[PersNr: integer, VorlNr: integer]} (1:N) arbeitenfür: {[AssiPersNr: integer, ProfPersNr: integer]} (N:1) prüfen: {[MatrNr: integer, VorlNr: integer, PersNr: integer, Note: decimal]} (N:M:1) Sebastian Skritek Seite 24 Sebastian Skritek Seite 24
13 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Verfeinerung von 1:N Beziehungen Wir hatten: : {[PersNr: integer, : string, Rang: string, Raum: integer]} : {[VorlNr: integer, Titel: string, SWS: integer]} lesen: {[VorlNr: integer, PersNr: integer]} Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Verfeinerung von 1:N Beziehungen Wir hatten: : {[PersNr: integer, : string, Rang: string, Raum: integer]} : {[VorlNr: integer, Titel: string, SWS: integer]} lesen: {[VorlNr: integer, PersNr: integer]} Verfeinerung durch Zusammenfassung von Relationen: : {[PersNr: integer, : string, Rang: string, Raum: integer]} Sebastian Skritek Seite 25 Sebastian Skritek Seite 25 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Verfeinerung von 1:N Beziehungen Wir hatten: : {[PersNr: integer, : string, Rang: string, Raum: integer]} : {[VorlNr: integer, Titel: string, SWS: integer]} lesen: {[VorlNr: integer, PersNr: integer]} Verfeinerung durch Zusammenfassung von Relationen: : {[PersNr: integer, : string, Rang: string, Raum: integer]} : {[VorlNr: integer, Titel: string, SWS: integer, Prof.PersNr: integer]} Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Verfeinerung von 1:N Beziehungen Wir hatten: : {[PersNr: integer, : string, Rang: string, Raum: integer]} : {[VorlNr: integer, Titel: string, SWS: integer]} lesen: {[VorlNr: integer, PersNr: integer]} Verfeinerung durch Zusammenfassung von Relationen: : {[PersNr: integer, : string, Rang: string, Raum: integer]} : {[VorlNr: integer, Titel: string, SWS: integer, Prof.PersNr: integer]} Nur Relationen mit gleichem Schlüssel zusammenfassen! Sebastian Skritek Seite 25 Sebastian Skritek Seite 25
14 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Ergebnis der richtigen Zusammenfassung PersNr Rang Raum Titel SWS VorlNr PersNr Rang Raum 2125 Sokrates C Russel C Kopernikus C Popper C Augustinus C Curie C N lesen VorlNr Titel SWS PersNr 5001 Grundzüge Ethik Mäeutik Logik Bioethik Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Falsches Zusammenfassen führt zu Anomalien PersNr Rang Raum liest VorlNr Titel SWS 2125 Sokrates C Grundzüge Sokrates C Ethik Sokrates C Mäeutik Russel C Logik Bioethik Curie C4 36??? Sebastian Skritek Seite 26 Sebastian Skritek Seite 27 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Falsches Zusammenfassen führt zu Anomalien PersNr Rang Raum liest VorlNr Titel SWS 2125 Sokrates C Grundzüge Sokrates C Ethik Sokrates C Mäeutik Russel C Logik Bioethik Curie C4 36??? Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Falsches Zusammenfassen führt zu Anomalien PersNr Rang Raum liest VorlNr Titel SWS 2125 Sokrates C Grundzüge Sokrates C Ethik Sokrates C Mäeutik Russel C Logik Bioethik Curie C4 36??? Problem Schlüssel: Relation braucht neuen Schlüssel Problem Schlüssel: Relation braucht neuen Schlüssel Update-Anomalie: Sokrates zieht um Sebastian Skritek Seite 27 Sebastian Skritek Seite 27
15 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Falsches Zusammenfassen führt zu Anomalien Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Falsches Zusammenfassen führt zu Anomalien PersNr Rang Raum liest VorlNr Titel SWS PersNr Rang Raum liest VorlNr Titel SWS 2125 Sokrates C Grundzüge Sokrates C Grundzüge Sokrates C Ethik Sokrates C Ethik Sokrates C Mäeutik Sokrates C Mäeutik Russel C Logik Russel C Logik Bioethik Bioethik Curie C4 36??? 2136 Curie C4 36??? Problem Schlüssel: Relation braucht neuen Schlüssel Update-Anomalie: Sokrates zieht um Einfüge-Anomalie: Curie ist neu und hält noch keine Vorlesung. Was ist der Schlüssel? Sebastian Skritek Seite 27 Problem Schlüssel: Relation braucht neuen Schlüssel Update-Anomalie: Sokrates zieht um Einfüge-Anomalie: Curie ist neu und hält noch keine Vorlesung. Was ist der Schlüssel? Lösch-Anomalie: Vorlesung Ethik fällt weg Sebastian Skritek Seite 27 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Nullwerte und deren Vermeidung Studierende, die als StudienassistentInnen arbeiten, bekommen einen Arbeitsraum. Es gibt Studierende und 200 StudienassistentInnen. Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Nullwerte und deren Vermeidung Studierende, die als StudienassistentInnen arbeiten, bekommen einen Arbeitsraum. Es gibt Studierende und 200 StudienassistentInnen. MatrNr Semester RaumNr m2 Lage Studenten (0,1) N 1 sitzen Raum Sebastian Skritek Seite 28 Sebastian Skritek Seite 28
16 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Nullwerte und deren Vermeidung Studierende, die als StudienassistentInnen arbeiten, bekommen einen Arbeitsraum. Es gibt Studierende und 200 StudienassistentInnen. Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Nullwerte und deren Vermeidung Studierende, die als StudienassistentInnen arbeiten, bekommen einen Arbeitsraum. Es gibt Studierende und 200 StudienassistentInnen. MatrNr Semester RaumNr m2 Lage MatrNr Semester RaumNr m2 Lage Studenten N 1 sitzen Raum Studenten N 1 sitzen Raum (0,1) (0,1) Studenten: {[MatrNr,, Semester]} sitzen: {[Studenten.MatrNr, Raum.RaumNr]} Raum: {[RaumNr, m2, Lage]} Sebastian Skritek Seite 28 Studenten: {[MatrNr,, Semester]} sitzen: {[Studenten.MatrNr, Raum.RaumNr]} Raum: {[RaumNr, m2, Lage]} Studenten: {[MatrNr,, Semester, Raum.RaumNr]} Hier nicht zusammenfassen um Nullwerte zu vermeiden Sebastian Skritek Seite 28 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen 1:1 Beziehung (sitzen) Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen 1:1 Beziehung (sitzen) PersNr Rang RaumNr m2 Lage PersNr Rang RaumNr m2 Lage 1 1 sitzen Raum 1 1 sitzen Raum (1,1) (0,1) (1,1) (0,1) : {[ PersNr,, Rang ]} Raum: {[ RaumNr, m2, Lage ]} : {[ PersNr,, Rang ]} Raum: {[ RaumNr, m2, Lage ]} sitzen: {[.PersNr, Raum.RaumNr]} {[.PersNr, Raum.RaumNr ]} oder Sebastian Skritek Seite 29 Sebastian Skritek Seite 29
17 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen 1:1 Beziehung (sitzen) Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen 1:1 Beziehung (sitzen) PersNr Rang RaumNr m2 Lage PersNr Rang RaumNr m2 Lage 1 1 sitzen Raum 1 1 sitzen Raum (1,1) (0,1) (1,1) (0,1) : {[ PersNr,, Rang ]} Raum: {[ RaumNr, m2, Lage ]} sitzen: {[.PersNr, Raum.RaumNr]} oder {[.PersNr, Raum.RaumNr ]} : {[ PersNr,, Rang, Raum.RaumNr ]} Raum: {[ RaumNr, m2, Lage ]} : {[ PersNr,, Rang ]} Raum: {[ RaumNr, m2, Lage ]} sitzen: {[.PersNr, Raum.RaumNr]} oder {[.PersNr, Raum.RaumNr ]} : {[ PersNr,, Rang, Raum.RaumNr ]} Raum: {[ RaumNr, m2, Lage ]} : {[ PersNr,, Rang ]} Raum: {[ RaumNr, m2, Lage,.PersNr ]} Sebastian Skritek Seite 29 Sebastian Skritek Seite 29 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen 1:1 Beziehung (sitzen) Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Verfeinerung bei (min,max)-notation PersNr Rang RaumNr m2 Lage E sitzen (1,1) (0,1) Raum E1 R En : {[ PersNr,, Rang ]} Raum: {[ RaumNr, m2, Lage ]} sitzen: {[.PersNr, Raum.RaumNr]} oder {[.PersNr, Raum.RaumNr ]} : {[ PersNr,, Rang, Raum.RaumNr ]} Raum: {[ RaumNr, m2, Lage ]} : {[ PersNr,, Rang ]} Raum: {[ RaumNr, m2, Lage,.PersNr ]} Achtung: Nullwertvermeidung Sebastian Skritek Seite 29 R E 1 E 2 E n Übersetzung ins Relationale Schema: R s : {[key(e 1 ), key(e 2 ),, key(e n )]} (min,max)-notation: Für jede Entity e i vom Typ E i gilt: min i #Tupel der Art (, e i, ) R max i Sebastian Skritek Seite 30
18 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Verfeinerung bei (min,max)-notation Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Verfeinerung bei (min,max)-notation PersNr Rang Lage m2 RaumNr PersNr Rang Lage m2 RaumNr (1,1) (0,1) sitzen Raum (1,1) (0,1) sitzen Raum : {[ PersNr,, Rang]} Raum: {[ RaumNr, m2, Lage]} : {[ PersNr,, Rang]} Raum: {[ RaumNr, m2, Lage]} sitzen: {[.PersNr, Raum.RaumNr]} Sebastian Skritek Seite 31 Sebastian Skritek Seite 31 Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Verfeinerung bei (min,max)-notation Das relationale Modell 2. Von EER zum relationalen Schema 2.3. Schlüssel von Beziehungstypen Verfeinerung bei (min,max)-notation PersNr Rang Lage m2 RaumNr (1,1) (0,1) sitzen : {[ PersNr,, Rang]} Raum: {[ RaumNr, m2, Lage]} sitzen: {[.PersNr, Raum.RaumNr]} : {[PersNr,, Rang, Raum.RaumNr]} Raum: {[RaumNr, m2, Lage]} Raum Die (min,max)-notation gibt an, wie oft eine Entity (des Typs E) in einer Ausprägung eines Beziehungstyps auftreten kann. (0,1) Maximal Einmal Identifiziert Tupel der Beziehung eindeutig. Schlüssel enthält die Fremdschlüsselattribute von E. Zusammenfassen kann zu NULL-Werten führen. (1,1) Genau Einmal Identifiziert Tupel der Beziehung eindeutig. Jede Entity vom Typ E steht in einer Beziehung. Schlüssel enthält die Fremdschlüsselattribute von E. Fasse Beziehung mit der Relation E zusammen. Sebastian Skritek Seite 31 Sebastian Skritek Seite 32
19 Das relationale Modell 2. Von EER zum relationalen Schema 2.4. Schwache Entitytypen Relationale Darstellung schwacher Entitytypen Das relationale Modell 2. Von EER zum relationalen Schema 2.4. Schwache Entitytypen Relationale Darstellung schwacher Entitytypen W 1 W j W 1 W j A 1 W j+1 A 1 W j+1 E R W A i W k E R W A i W k E: {[ A 1,, A i,a i+1,, A n ]} Sebastian Skritek Seite 33 Sebastian Skritek Seite 33 Das relationale Modell 2. Von EER zum relationalen Schema 2.4. Schwache Entitytypen Relationale Darstellung schwacher Entitytypen Das relationale Modell 2. Von EER zum relationalen Schema 2.4. Schwache Entitytypen Relationale Darstellung schwacher Entitytypen MatrNr Semester Note A 1 W 1 W j W j+1 Studenten 1 N ablegen Prüfungen PrüfTeil E R W A i W k VorlNr SWS N umfassen M N abhalten M PersNr Rang Titel Raum E: {[ A 1,, A i,a i+1,, A n ]} W: {[ E.A 1,, E.A i,w 1,, W j, W j+1,, W k ]} Sebastian Skritek Seite 33 Sebastian Skritek Seite 34
20 Das relationale Modell 2. Von EER zum relationalen Schema 2.4. Schwache Entitytypen Relationale Darstellung schwacher Entitytypen Das relationale Modell 2. Von EER zum relationalen Schema 2.4. Schwache Entitytypen Relationale Darstellung schwacher Entitytypen MatrNr Semester MatrNr Semester Note Note 1 N ablegen Prüfungen PrüfTeil 1 N ablegen Prüfungen PrüfTeil Studenten Studenten N N PersNr N N PersNr VorlNr umfassen abhalten VorlNr umfassen abhalten SWS M M Rang SWS M M Rang Titel Raum Titel Raum Prüfungen: {[Student.MatrNr, PrüfTeil, Note]} Prüfungen: {[Student.MatrNr, PrüfTeil, Note]} umfassen: {[Prüfungen.MatrNr, Prüfungen.PrüfTeil, VorlNr]} abhalten: {[Prüfungen.MatrNr, Prüfungen.PrüfTeil, PersNr]} Sebastian Skritek Seite 34 Sebastian Skritek Seite 34 Das relationale Modell 2. Von EER zum relationalen Schema 2.5. Generalisierung Relationale Darstellung der Generalisierung Das relationale Modell 2. Von EER zum relationalen Schema 2.5. Generalisierung Relationale Darstellung der Generalisierung A i+1 A n A i+1 A n A 1 S 1 A 1 S 1 E S E S A i S k A i S k E: {[ A 1 : typ 1,, A i : typ i, A i+1 : typ i+1,, A k : typ k ]} S: {[ E.A 1 : typ 1,, E.A i : typ i, S 1 : typ s1,, S k : typ sk ]} Sebastian Skritek Seite 35 Sebastian Skritek Seite 35
21 Das relationale Modell 2. Von EER zum relationalen Schema 2.5. Generalisierung Relationale Darstellung der Generalisierung Das relationale Modell 2. Von EER zum relationalen Schema 2.5. Generalisierung Relationale Darstellung der Generalisierung Relationale Darstellung der Generalisierung aus dem Uni Schema Relationale Darstellung der Generalisierung aus dem Uni Schema Angestellte PersNr Angestellte PersNr is-a is-a Rang Rang Fach Assistenten Raum Fach Assistenten Raum Angestellte: {[PersNr, ]} Angestellte: {[PersNr, ]} : {[Angestellte.PersNr, Rang, Raum]} Assistenten: {[Angestellte.PersNr, Fach]} Sebastian Skritek Seite 36 Sebastian Skritek Seite 36 Das relationale Modell 2. Von EER zum relationalen Schema 2.5. Generalisierung Von EER zum relationalen Schema: Unischema (Unischema) Das relationale Modell 2. Von EER zum relationalen Schema 2.6. Relationale Universitätsdatenbank Relationale Universitätsdatenbank MatrNr Studenten Semester N hören M N Vorgänger voraussetzen M Nachfolger VorlNr Studenten MatrNr Sem Xenokrates Jonas 12 PersNr Rang Raum 2125 Sokrates C Russel C4 232 SWS Fichte Kopernikus C3 310 N Titel Aristoxenos Popper C3 52 PersNr Fachgebiet Assistenten N prüfen 1 N 1 arbeitenfür M lesen 1 PersNr Rang Schopenhauer Carnap Theophrastos Feuerbach Augustinus C Curie C Kant C4 7 Raum Sebastian Skritek Seite 37 Sebastian Skritek Seite 38
22 Das relationale Modell 2. Von EER zum relationalen Schema 2.6. Relationale Universitätsdatenbank Relationale Universitätsdatenbank voraussetzen VorlNr Titel SWS PersNr VorgNr NachfNr 5001 Grundzüge Ethik Erkenntnistheorie Mäeutik Logik Wissenschaftstheorie Bioethik Der Wiener Kreis Glaube und Wissen Die drei Kritiken Sebastian Skritek Seite 39 Das relationale Modell 2. Von EER zum relationalen Schema 2.6. Relationale Universitätsdatenbank Relationale Universitätsdatenbank hören Assistenten MatrNr VorlNr PersNr Fachgebiet Boss Platon Ideenlehre Aristoteles Syllogistik Wittgenstein Sprachtheorie Rhetikus Planetenbewegung Newton Kepler Gesetze Spinoza Gott und Natur prüfen MatrNr VorlNr PersNr Note Sebastian Skritek Seite 40 Das relationale Modell 3. Datenabfragesprachen Das relationale Modell 3. Datenabfragesprachen Datenabfragesprachen (Query Languages) Datenabfragesprachen In dieser Einheit: Relationale Algebra Relationenkalkül Sebastian Skritek Seite 41 Sebastian Skritek Seite 42
23 Das relationale Modell 3. Datenabfragesprachen Datenabfragesprachen (Query Languages) Die relationale Algebra In dieser Einheit: Relationale Algebra Relationenkalkül CODD 1970: A relational model for large shared data banks. Communications of the ACM, 13(6): CODD 1972: Relational Completeness of Data Base Sublanguages. In: Rustin, R., Hrsg.: Database Systems, Prentice Hall, Englewood Cliffs, NY, USA Beide Sprachen Bilden theoretische Grundlage für SQL Sind gleich ausdrucksstark Sind relational abgeschlossen Sebastian Skritek Seite 42 Sebastian Skritek Seite 43 Die relationale Algebra Die relationale Algebra CODD 1970: A relational model for large shared data banks. Communications of the ACM, 13(6): CODD 1972: Relational Completeness of Data Base Sublanguages. In: Rustin, R., Hrsg.: Database Systems, Prentice Hall, Englewood Cliffs, NY, USA Relational abgeschlossen: das Ergebnis einer Abfrage ist wieder eine Relation Prozedurale Abfragesprache: Ausdruck beinhaltet implizit Abarbeitungsplan zur Ausführung der Abfrage CODD 1970: A relational model for large shared data banks. Communications of the ACM, 13(6): CODD 1972: Relational Completeness of Data Base Sublanguages. In: Rustin, R., Hrsg.: Database Systems, Prentice Hall, Englewood Cliffs, NY, USA Relational abgeschlossen: das Ergebnis einer Abfrage ist wieder eine Relation Prozedurale Abfragesprache: Ausdruck beinhaltet implizit Abarbeitungsplan zur Ausführung der Abfrage Mengenorientierte Sprache: Operationen arbeiten auf Mengen von Tupeln Sebastian Skritek Seite 43 Sebastian Skritek Seite 43
24 Die Operatoren der relationalen Algebra Basisoperatoren σ: Selektion π: Projektion : Vereinigung : Mengendifferenz : kartesisches Produkt (Kreuzprodukt) ρ: Umbenennung Die Operatoren der relationalen Algebra Basisoperatoren σ: Selektion π: Projektion : Vereinigung : Mengendifferenz : kartesisches Produkt (Kreuzprodukt) ρ: Umbenennung : Join (Verbund), bzw. : linker, rechter bzw. voller äußerer Join bzw. : linker bzw. rechter Semi-Join : Durchschnitt : Division Sebastian Skritek Seite 44 Sebastian Skritek Seite 44 Selektion und Projektion Selektion und Projektion Studenten MatrNr Semester Xenokrates Jonas Aristoxenos Schopenhauer Fichte Carnap 3 Studenten MatrNr Semester Xenokrates Jonas Aristoxenos Schopenhauer Fichte Carnap 3 Selektion: Wähle Tupel aus Sebastian Skritek Seite 45 Sebastian Skritek Seite 45
25 Selektion und Projektion Selektion und Projektion Studenten MatrNr Semester Xenokrates Jonas Aristoxenos Schopenhauer Fichte Carnap 3 Studenten MatrNr Semester Xenokrates Jonas Fichte 10 Studenten MatrNr Semester Xenokrates Jonas Aristoxenos Schopenhauer Fichte Carnap 3 Selektion: Wähle Tupel aus Selektion: Wähle Tupel aus Projektion: Wähle Attribute (Spalten) aus Sebastian Skritek Seite 45 Sebastian Skritek Seite 45 Selektion und Projektion Studenten Studenten MatrNr Semester MatrNr Xenokrates Jonas Aristoxenos Schopenhauer Fichte Carnap Selektion: Wähle Tupel aus Projektion: Wähle Attribute (Spalten) aus Die Selektion: σ F (R) Finde alle Studierenden, die mehr als 10 Semester inskribiert sind. Studenten MatrNr Semester Xenokrates Jonas Fichte Aristoxenos Schopenhauer Carnap 3 Sebastian Skritek Seite 45 Sebastian Skritek Seite 46
26 Die Selektion: σ F (R) Finde alle Studierenden, die mehr als 10 Semester inskribiert sind. σ Semester>10 (Studenten) Die Selektion: σ F (R) Finde alle Studierenden, die mehr als 10 Semester inskribiert sind. σ Semester>10 (Studenten) Studenten MatrNr Semester Xenokrates Jonas Fichte Aristoxenos Schopenhauer Carnap 3 Studenten MatrNr Semester Xenokrates Jonas Fichte Aristoxenos Schopenhauer Carnap 3 σ Semester>10 (Studenten) MatrNr Semester Xenokrates Jonas 12 Sebastian Skritek Seite 46 Sebastian Skritek Seite 46 Die Selektion: σ F (R) Auswahl von Zeilen der Relation R mittels der Formel F F verwendet Vergleichsoperatoren (=,,,, >, <), logische Operatoren (,, ), Attributnamen von R und Konstanten Definition (σ F (R)) Schema: sch(σ F (R)) = sch(r) Ausprägung: σ F (R) = {t R terfülltf } Auswertung von F für Tupel t: Ersetze alle Attributnamen in F durch entsprechenden Wert in t Die Projektion π Ai (R) Finde alle Rangbezeichnungen für. PersNr Rang Raum 2125 Sokrates C Russel C Kopernikus C Popper C Augustinus C Curie C4 36 Sebastian Skritek Seite 47 Sebastian Skritek Seite 48
27 Die Projektion π Ai (R) Finde alle Rangbezeichnungen für. π Rang () Die Projektion π Ai (R) Finde alle Rangbezeichnungen für. π Rang () PersNr Rang Raum 2125 Sokrates C Russel C Kopernikus C Popper C Augustinus C Curie C4 36 PersNr Rang Raum 2125 Sokrates C Russel C Kopernikus C Popper C Augustinus C Curie C4 36 π Rang () Rang C3 C4 Sebastian Skritek Seite 48 Sebastian Skritek Seite 48 Die Projektion π Ai (R) Die Projektion π Ai (R) Auswahl einer Menge von Spalten A i einer Relation E Achtung: Duplikate werden eliminiert Auswahl einer Menge von Spalten A i einer Relation E Achtung: Duplikate werden eliminiert Definition (π Ai (R)) Sei A i eine Teilmenge der Attribute von R Schema: sch(π Ai (R)) = A i Ausprägung: {t t R : t.a i = t } Sebastian Skritek Seite 49 Sebastian Skritek Seite 49
28 Die Vereinigung R S Finde die n aller und Assistenten? Die Vereinigung R S Finde die n aller und Assistenten? π () π () Sokrates Curie Sebastian Skritek Seite 50 Sebastian Skritek Seite 50 Die Vereinigung R S Finde die n aller und Assistenten? π () π (Assistenten) Die Vereinigung R S Finde die n aller und Assistenten? π () π (Assistenten) π () Sokrates Curie π () Sokrates Curie π (Assistenten) Platon Spinoza Sebastian Skritek Seite 50 π (Assistenten) Platon Spinoza Sebastian Skritek Seite 50
29 Die Vereinigung R S Finde die n aller und Assistenten? π () π (Assistenten) π () π () π (Assistenten) Sokrates Sokrates Curie π (Assistenten) Platon Spinoza Kant Platon Spinoza Sebastian Skritek Seite 50 Die Vereinigung R S Definiert auf zwei Relationen R, S mit gleichem Schema Gibt alle Zeilen aus, die in R oder in S vorkommen Definition (R S) Vorbedingung: sch(r) = sch(s) Schema: sch(r S) = sch(r) Ausprägung: {t t R oder t S} Sebastian Skritek Seite 51 Die Mengendifferenz R S Finde die (Matrikelnummer der) Studierenden, die noch keine Prüfung absolviert haben. π MatrNr (Studenten) MatrNr π MatrNr (prüfen) MatrNr Sebastian Skritek Seite 52 Die Mengendifferenz R S Finde die (Matrikelnummer der) Studierenden, die noch keine Prüfung absolviert haben. π MatrNr (Studenten) π MatrNr (prüfen) π MatrNr (Studenten) MatrNr π MatrNr (prüfen) MatrNr Sebastian Skritek Seite 52
30 Die Mengendifferenz R S Finde die (Matrikelnummer der) Studierenden, die noch keine Prüfung absolviert haben. π MatrNr (Studenten) π MatrNr (prüfen) Die Mengendifferenz R S Definiert auf zwei Relationen R, S mit gleichem Schema Gibt alle Zeilen aus, die in R aber nicht in S vorkommen π MatrNr (Studenten) MatrNr π MatrNr (prüfen) MatrNr π MatrNr (Studenten) π MatrNr (prüfen) MatrNr Definition (R S) Vorbedingung: sch(r) = sch(s) Schema: sch(r S) = sch(r) Ausprägung: {t t R und t / S} Sebastian Skritek Seite 52 Sebastian Skritek Seite 53 Das Kartesische Produkt R S Finde alle Paare von Studenten und Einträgen in hören Studenten hören Studenten hören MatrNr Sem hören.matrnr VorlNr Xenokrates Xenokrates Xenokrates Jonas Feuerbach Feuerbach Sebastian Skritek Seite 54 Das Kartesische Produkt R S Verknüpft jede Zeile von R mit jeder Zeile von S Schema von R S ist die Vereinigung der Attribute von R und S Ergebnisgröße: R S = R S Oftmals bessere Operation ist der Join Sebastian Skritek Seite 55
31 Das Kartesische Produkt R S Verknüpft jede Zeile von R mit jeder Zeile von S Schema von R S ist die Vereinigung der Attribute von R und S Ergebnisgröße: R S = R S Oftmals bessere Operation ist der Join Definition (R S) Sei sch(r) = {[A 1,, A m ]} und sch(s) = {[B 1,, B n ]}. Schema: sch(r S) = {[A 1,, A m, B 1,, B n ]} (sicherstellen dass kein Attributename doppelt vorkommt) Ausprägung: {t t 1 R : t.[a 1,, A m ] = t 1 und t 2 S : t.[b 1,, B n ] = t 2 } Die Umbenennung ρ X (R) Finde die VorlNr aller ohne Voraussetzungen VorlNr Titel SWS PersNr voraussetzen VorgNr NachfNr Sebastian Skritek Seite 55 Sebastian Skritek Seite 56 Die Umbenennung ρ X (R) Die Umbenennung ρ X (R) Finde die VorlNr aller ohne Voraussetzungen ρ VorlNr NachfNr (voraussetzen) Finde die VorlNr aller ohne Voraussetzungen ρ VorlNr NachfNr (voraussetzen) VorlNr Titel SWS PersNr voraussetzen VorgNr NachfNr VorlNr Titel SWS PersNr voraussetzen VorgNr NachfNr ρ VorlNr NachfNr (voraussetzen) VorlNr NachfNr Sebastian Skritek Seite 56 Sebastian Skritek Seite 56
32 Die Umbenennung ρ X (R) Finde die VorlNr aller ohne Voraussetzungen ρ VorlNr NachfNr (voraussetzen) Die Umbenennung ρ X (R) Finde die Vorlesungsnummern der, die indirekte Vorgänger 2. Stufe der VO 5216 sind (= Vorgänger der Vorgänger von 5216) VorlNr Titel SWS PersNr ρ VorlNr NachfNr (voraussetzen) VorlNr NachfNr voraussetzen VorgNr NachfNr π VorlNr () π VorlNr (ρ VorlNr NachfNr (voraussetzen)) voraussetzen VorgNr NachfNr voraussetzen VorgNr NachfNr ( π V1.VorgNr σ V1.NachfNr=V 2.VorgNr V 2.NachfNr=5216 ( ρv1 (voraussetzen) ρ V 2 (voraussetzen) )) Sebastian Skritek Seite 56 Sebastian Skritek Seite 57 Die Umbenennung ρ X (R) Finde die Vorlesungsnummern der, die indirekte Vorgänger 2. Stufe der VO 5216 sind (= Vorgänger der Vorgänger von 5216) ρ V1 (voraussetzen) ρ V 2 (voraussetzen) Die Umbenennung ρ X (R) Finde die Vorlesungsnummern der, die indirekte Vorgänger 2. Stufe der VO 5216 sind (= Vorgänger der Vorgänger von 5216) ρ V1 (voraussetzen) ρ V 2 (voraussetzen) voraussetzen VorgNr NachfNr voraussetzen VorgNr NachfNr VorgNr V 1 NachfNr voraussetzen VorgNr NachfNr ( π V1.VorgNr σ V1.NachfNr=V 2.VorgNr V 2.NachfNr=5216 ( ρv1 (voraussetzen) ρ V 2 (voraussetzen) )) voraussetzen VorgNr NachfNr VorgNr NachfNr ( π V1.VorgNr σ V1.NachfNr=V 2.VorgNr V 2.NachfNr=5216 ( ρv1 (voraussetzen) ρ V 2 (voraussetzen) )) V 2 Sebastian Skritek Seite 57 Sebastian Skritek Seite 57
33 Die Umbenennung ρ X (R) Die Umbenennung ρ X (R) Die Umbenennung von Attributen ρ A B (R): ρ A B (R) benennt das Attribut B der Relation R neu mit A Die Umbenennung von Attributen ρ A B (R): ρ A B (R) benennt das Attribut B der Relation R neu mit A Die Umbenennung von Relationen ρ V (R) Die Relation R bekommt den neuen n V Sebastian Skritek Seite 58 Sebastian Skritek Seite 58 Definition: Ausdrücke der relationalen Algebra Definition: Ausdrücke der relationalen Algebra Definition (Relationale Algebra) Die Basisausdrücke der relationalen Algebra sind: Relationen der Datenbank oder konstante Relationen Definition (Relationale Algebra) Die Basisausdrücke der relationalen Algebra sind: Relationen der Datenbank oder konstante Relationen Seien R und S Ausdrücke der relationalen Algebra, so sind: σ F (R) und π Ai (R) R S, R S, und R S ρ A B (R) und ρ V (R) ebenfalls gültige Ausdrücke der relationalen Algebra. Sebastian Skritek Seite 59 Sebastian Skritek Seite 59
34 Ausdrücke der relationalen Algebra π (σ R1.MN=St.MN ((π MN (Student) π MN (hören)) Student)) π () Ausdrücke der relationalen Algebra π (σ R1.MN=St.MN ((π MN (Student) π MN (hören)) Student)) π () π σ R1.MatrNr=Student.MatrNr π Student π MatrNr Student π MatrNr hören Sebastian Skritek Seite 60 Sebastian Skritek Seite 60 Ausdrücke der relationalen Algebra π (σ R1.MN=St.MN ((π MN (Student) π MN (hören)) Student)) π () Ausdrücke der relationalen Algebra π (σ R1.MN=St.MN ((π MN (Student) π MN (hören)) Student)) π () π π π π σ R1.MatrNr=Student.MatrNr σ R1.MatrNr=Student.MatrNr Student Student π MatrNr π MatrNr π MatrNr π MatrNr Student hören Student hören Sebastian Skritek Seite 60 Sebastian Skritek Seite 60
35 Ausdrücke der relationalen Algebra π (σ R1.MN=St.MN ((π MN (Student) π MN (hören)) Student)) π () Ausdrücke der relationalen Algebra π (σ R1.MN=St.MN ((π MN (Student) π MN (hören)) Student)) π () π π π π σ R1.MatrNr=Student.MatrNr σ R1.MatrNr=Student.MatrNr Student Student π MatrNr π MatrNr π MatrNr π MatrNr Student hören Student hören Sebastian Skritek Seite 60 Sebastian Skritek Seite 60 Ausdrücke der relationalen Algebra π (σ R1.MN=St.MN ((π MN (Student) π MN (hören)) Student)) π () Ausdrücke der relationalen Algebra π (σ R1.MN=St.MN ((π MN (Student) π MN (hören)) Student)) π () π π π π σ R1.MatrNr=Student.MatrNr σ R1.MatrNr=Student.MatrNr Student Student π MatrNr π MatrNr π MatrNr π MatrNr Student hören Student hören Sebastian Skritek Seite 60 Sebastian Skritek Seite 60
36 Ausdrücke der relationalen Algebra π (σ R1.MN=St.MN ((π MN (Student) π MN (hören)) Student)) π () Ausdrücke der relationalen Algebra π (σ R1.MN=St.MN ((π MN (Student) π MN (hören)) Student)) π () Sebastian Skritek Seite 61 Sebastian Skritek Seite 61 Ausdrücke der relationalen Algebra π (σ R1.MN=St.MN ((π MN (Student) π MN (hören)) Student)) π () Ausdrücke der relationalen Algebra π (σ R1.MN=St.MN ((π MN (Student) π MN (hören)) Student)) π () π (σ R1.MN=St.MN ( )) π () π π σ R1.MN=St.MN (( ) Student) Sebastian Skritek Seite 61 Sebastian Skritek Seite 61
37 Ausdrücke der relationalen Algebra π (σ R1.MN=St.MN ((π MN (Student) π MN (hören)) Student)) π () Ausdrücke der relationalen Algebra π (σ R1.MN=St.MN ((π MN (Student) π MN (hören)) Student)) π () π π π π σ R1.MN=St.MN σ R1.MN=St.MN (π MN (Student) π MN (hören)) Student Student Sebastian Skritek Seite 61 Sebastian Skritek Seite 61 Ausdrücke der relationalen Algebra π (σ R1.MN=St.MN ((π MN (Student) π MN (hören)) Student)) π () Ausdrücke der relationalen Algebra π (σ R1.MN=St.MN ((π MN (Student) π MN (hören)) Student)) π () π π π π σ R1.MN=St.MN σ R1.MN=St.MN Student Student π MatrNr(... ) π MatrNr(... ) π MatrNr Student π MatrNr hören Sebastian Skritek Seite 61 Sebastian Skritek Seite 61
38 Der natürliche Verbund (Join) R S Welche Studenten besuchen welche? σ Studenten.MatrNr=hören.MatrNr (Studenten hören) Studenten hören Studenten Studenten hören MatrNr Sem MatrNr Sem VorlNr Xenokrates Fichte Schopenhauer hören Schopenhauer MatrNr VorlNr Carnap Carnap Der natürliche Verbund (Join) R S Verknüpft zwei Relationen R, S. 1 Bildet das kartesische Produkt der Relationen 2 Selektiert jene Tupel, die auf den gleichnamigen Spalten denselben Wert annehmen 3 Projiziert die doppelt vorkommenden Spalten weg Sebastian Skritek Seite 62 Sebastian Skritek Seite 63 Der natürliche Verbund (Join) R S Verknüpft zwei Relationen R, S. 1 Bildet das kartesische Produkt der Relationen 2 Selektiert jene Tupel, die auf den gleichnamigen Spalten denselben Wert annehmen 3 Projiziert die doppelt vorkommenden Spalten weg Der natürliche Verbund (Join) R S Definition (Natürlicher Verbund) Seien R, S mit folgenden Schemata gegeben: R(A 1,, A m, B 1, B k ) und S(B 1, B k, C 1, C n ). Der natürliche Verbund ist definiert als R S = π A1,...A m,r.b 1,...R.B k,c 1,...C n σ R.B1 =S.B 1 R.B k =S.B k (R S) R S R S R S S R A 1 A 2 A m B 1 B 2 B k C 1 C 2 C n R S R S R S S R A 1 A 2 A m B 1 B 2 B k C 1 C 2 C n Sebastian Skritek Seite 63 Sebastian Skritek Seite 64
39 Bsp: Der natürliche Join Welche Studierende besuchen welche? Studenten MatrNr Sem Xenokrates Jonas 12 MatrNr hören VorlNr VorlNr Titel SWS PersNr 5001 Grundzüge Ethik Sebastian Skritek Seite 65 Bsp: Der natürliche Join Studenten hören Vorlesung MatrNr Sem VorlNr Titel SWS PersNr Fichte Grundzüge Schopenhauer Grundzüge Schopenhauer Logik Carnap Ethik Carnap Grundzüge Carnap Logik Carnap Die drei Kritiken Theophrastos Grundzüge Theophrastos Ethik Theophrastos Mäeutik Feuerbach Glaube und Wissen Jonas Glaube und Wissen Sebastian Skritek Seite 66 Der allgemeine Verbund (Join) R θ S Der allgemeine Verbund (Join) R θ S Verknüpft zwei Relationen R, S, auch wenn sie keine gleichnamigen Attribute haben aufgrund einer logischen Bedingung θ. Verknüpft zwei Relationen R, S, auch wenn sie keine gleichnamigen Attribute haben aufgrund einer logischen Bedingung θ. Definition Seien R und S mit folgenden Schemata gegeben: R(A 1,, A n ) und S(B 1,, B m ). Sei θ ein Prädikat über den Attributen A 1,, A n, B 1,, B m. Der allgemeine Verbund ist definiert als R θ S = σ θ (R S) Sebastian Skritek Seite 67 Sebastian Skritek Seite 67
40 Der allgemeine Verbund (Join) R θ S Verknüpft zwei Relationen R, S, auch wenn sie keine gleichnamigen Attribute haben aufgrund einer logischen Bedingung θ. e (θ) Andere Join Arten natürlicher Join (Wh): nur jene Tupel bleiben im Ergebnis, die einen Join-Partner gefunden haben. L A B C a 1 b 1 c 1 a 2 b 2 c 2 R C D E c 3 d 2 e 2 c 1 d 1 e 1 = R S A B C D E a 1 b 1 c 1 d 1 e 1 θ = Sem > 10 SWS = 4 PersNr = 2134 θ = Student.MatrNr = hören.matrnr hören.vorlnr =.VorlNr θ =.VorlNr = voraussetzen.vorgnr Sebastian Skritek Seite 68 Sebastian Skritek Seite 69 Andere Join Arten natürlicher Join (Wh): nur jene Tupel bleiben im Ergebnis, die einen Join-Partner gefunden haben. Andere Join Arten: Linker/Rechter äußerer Join linker äußerer Join: Tupel der linken Relation bleiben erhalten L A B C a 1 b 1 c 1 a 2 b 2 c 2 R C D E c 3 d 2 e 2 c 1 d 1 e 1 = R S A B C D E a 1 b 1 c 1 d 1 e 1 L A B C a 1 b 1 c 1 a 2 b 2 c 2 R C D E c 3 d 2 e 2 c 1 d 1 e 1 = R S A B C D E a 1 b 1 c 1 d 1 e 1 a 2 b 2 c 2 NULL NULL voller äußerer Join: alle Tupel bleiben erhalten L A B C a 1 b 1 c 1 a 2 b 2 c 2 R C D E c 3 d 2 e 2 c 1 d 1 e 1 = R S A B C D E a 1 b 1 c 1 d 1 e 1 a 2 b 2 c 2 NULL NULL NULL NULL c 3 d 2 e 2 Sebastian Skritek Seite 69 Sebastian Skritek Seite 70
41 Andere Join Arten: Linker/Rechter äußerer Join linker äußerer Join: Tupel der linken Relation bleiben erhalten Andere Join Arten: Semi-Join Semi-Join von L mit R (bzw. R mit L): alle Tupel der Relation L (bzw. R), die einen Join eingehen können, werden ausgewählt. L A B C a 1 b 1 c 1 a 2 b 2 c 2 R C D E c 3 d 2 e 2 c 1 d 1 e 1 = R S A B C D E a 1 b 1 c 1 d 1 e 1 a 2 b 2 c 2 NULL NULL L A B C a 1 b 1 c 1 a 2 b 2 c 2 R C D E c 3 d 2 e 2 c 1 d 1 e 1 = L R A B C a 1 b 1 c 1 rechter äußerer Join: Tupel der rechten Relation bleiben erhalten L A B C a 1 b 1 c 1 a 2 b 2 c 2 R C D E c 3 d 2 e 2 c 1 d 1 e 1 = R S A B C D E a 1 b 1 c 1 d 1 e 1 NULL NULL c 3 d 2 e 2 L A B C a 1 b 1 c 1 a 2 b 2 c 2 R C D E c 3 d 2 e 2 c 1 d 1 e 1 = L R C D E c 1 d 1 e 1 Sebastian Skritek Seite 70 Sebastian Skritek Seite 71 Der Mengendurchschnitt R S Definiert auf zwei Relationen R, S mit gleichem Schema Gibt alle Zeilen aus, die in R und in S vorkommen Kann mittels Mengendifferenz ausgedrückt werden: R S = R (R S) Der Mengendurchschnitt R S Definiert auf zwei Relationen R, S mit gleichem Schema Gibt alle Zeilen aus, die in R und in S vorkommen Kann mittels Mengendifferenz ausgedrückt werden: R S = R (R S) Finde die PersNr jener C4, die eine Vorlesung halten. π PersNr () π PersNr σ Rang=C4 () PersNr Sebastian Skritek Seite 72 Sebastian Skritek Seite 72
42 Die relationale Division R S Welche Studierenden haben alle 4-stündigen gehört? hören MatrNr VorlNr π VorlNr σ SWS=4 () VorlNr R S MatrNr = Sebastian Skritek Seite 73 Die relationale Division R S Welche Studierenden haben alle 4-stündigen gehört? hören MatrNr VorlNr hören π VorlNr σ SWS=4 () π VorlNr σ SWS=4 () VorlNr R S MatrNr = Sebastian Skritek Seite 73 Die relationale Division R S Die relationale Division R S Definiert auf zwei Relationen R, S Schema von S muss Teilmenge von Schema von R sein Ergebnisschema: Attribute von R ohne jenen von S Ergebnis enthält alle Tupel von π R S (R) die mit jedem Tupel in S ein Tupel in R bilden Gegenstück zum kartesischen Produkt: T = U V T U = V und T V = U Kann ausgedrückt werden als R S = π R S (R) π R S ((π R S (R) S) R) Definition Seien R, S Relationen, mit S R. Tupel t R S wenn es für jedes Tupel s S ein Tupel r R gibt, mit: r.s = s r.(r S) = t Sebastian Skritek Seite 74 Sebastian Skritek Seite 75
Vorlesung Datenbanksysteme vom
Vorlesung Datenbanksysteme vom 27.10.2008 Wiederholung: Relationale Algebra Relationale Algebra Join-Operatoren Eigenschaften der relationalen Operatoren Grundlagen des relationalen Modells Seien D 1,
MehrDatenmodellierung. VU , WS 2016 Das relationale Modell. Nysret Musliu, Sebastian Skritek
Das relationale Modell Datenmodellierung VU 184.685, WS 2016 Das relationale Modell Nysret Musliu, Sebastian Skritek Institut für Informationssysteme Technische Universität Wien Nysret Musliu, Sebastian
MehrWiederholung: Relationale Algebra
Vorlesung Datenbanksysteme vom 1.11.016 Wiederholung: Relationale Algebra Relationale Algebra Join-Operatoren Eigenschaften der relationalen Operatoren Grundlagen des relationalen Modells Seien D1, D,,
MehrGrundlagen des relationalen Modells
Grundlagen des relationalen Modells Seien D 1, D,, D n Domänen (Wertebereiche) Relation: R D 1 x x D n Bsp.: Telefonbuch string x string x integer Tupel: t R Bsp.: t = ( Mickey Mouse, Main Street, 711)
MehrDas 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
MehrDatenbanksysteme 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,,...,
MehrGrundlagen des relationalen Modells
Grundlagen des relationalen Modells Seien D 1, D 2,..., D n Relation: R D 1 Domänen (Wertebereiche) x... x D n Bsp.: Telefonbuch string x string x integer Tupel: t R Bsp.: t = ( Mickey Mouse, Main Street,
MehrGrundlagen des relationalen l Modells
Grundlagen des relationalen l Modells Seien D 1, D 2,..., D n Domänen (~Wertebereiche) Relation: R D 1 x... x D n Bsp.: Telefonbuch string x string x integer Tupel: t R Bsp.: t = ( Mickey Mouse, Main Street,
MehrDas relationale Modell
Das relationale Modell Grundlagen Übersetzung von ER-Schemata in relationale Schemata Relationale Algebra Relationenkalkül Domänenkalkül Grundlagen des relationalen Modells Seien D 1, D 2,..., D n Domänen
MehrAcknowledgments. Datenmodellierung. Übersicht. Das Relationale Modell: Begriffsklärung VU , WS Das relationale Modell
Das relationale odell Das relationale odell Acknowledgments Datenmodellierung VU 184.685, WS 2015 Das relationale odell Sebastian Skritek Die Folien sind eine kleine Erweiterung der Folien von Katrin Seyr.
MehrGrundlagen des relationalen Modells
Grundlagen des relationalen Modells Das relationale Modell Verfeinerung des relationalen Schemas Relationale Algebra Relationenkalkül Kapitel 3 1 Grundlagen des relationalen Modells Seien D 1, D,, D n
MehrDatenbanken. Datenintegrität + Datenschutz. Tobias Galliat. Sommersemester 2012
Datenbanken Datenintegrität + Datenschutz Tobias Galliat Sommersemester 2012 Professoren PersNr Name Rang Raum 2125 Sokrates C4 226 Russel C4 232 2127 Kopernikus C3 310 2133 Popper C3 52 2134 Augustinus
MehrDatenbanksysteme 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):
MehrFortsetzung: Projektion Selektion. NULL Werte
Fortsetzung: Anfragen mit SQL Bisher: Projektion Selektion Duplikatbehandlung NULL Werte Professoren PersNr Name Rang Raum 2125 Sokrates 226 2126 Russel 232 2127 Kopernikus C3 310 2133 Popper C3 52 2134
MehrSWE4 Slide 1. Software-Engineering. Vorlesung 4 vom Sebastian Iwanowski FH Wedel
SWE4 Slide Software-Engineering Vorlesung 4 vom 08..2004 Sebastian Iwanowski FH Wedel SWE4 Slide 2 Software-Engineering Vorlesungsthemen:. Überblick über das Thema und die Vorlesung 2. Grundlegende Prinzipien
MehrDatenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen
Datenintegrität Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen Formulierung von Integritätsbedingungen ist die wichtigste Aufgabe des DB-Administrators!
MehrRelationales Datenmodell Relationale Algebra
Institute for Web Science & Technologies WeST Grundlagen der Datenbanken Relationale Algebra Dr. Thomas Gottron Wintersemester 2012/13 Lernziele Grundbegriffe des Relationalen Modells Abbildung von ER-Diagrammen
MehrKapitel 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
MehrRückblick: Datenbankentwurf
Rückblick: Datenbankentwurf Entity-Relationship-Modell für konzeptuellen Entwurf Entitytypen (entity types) (z.b. Studenten) Beziehungstypen (relationships) (z.b. hören) Attribute beschreiben Gegenstände
MehrDas Relationale Modell
Kapitel 6 Das Relationale Modell 6.1 Definition Gegeben sind n nicht notwendigerweise unterschiedliche Wertebereiche (auch Domänen genannt) D 1,..., D n, welche nur atomare Werte enthalten, die nicht strukturiert
MehrDatenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen
Datenintegrität Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen Formulierung von Integritätsbedingungen ist die wichtigste Aufgabe des DB-Administrators!
MehrDatenintegrität. Arten von Integritätsbedingungen. Statische Integritätsbedingungen. Referentielle Integrität. Integritätsbedingungen in SQL.
Datenintegrität Arten von Integritätsbedingungen Statische Integritätsbedingungen Referentielle Integrität Integritätsbedingungen in SQL Trigger 1 Datenintegrität Einschränkung der möglichen Datenbankzustände
MehrSoftware-Engineering
SWE42 Slide Software-Engineering Sebastian Iwanowski FH Wedel Kapitel 4: Systemanalyse Teil 2: Datenorientierte Sicht SWE42 Slide 2 Systemanalyse: Datenorientierte Sicht Entity-Relationship-Modellierung
MehrArchitektur 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
MehrWiederholung VU Datenmodellierung
Wiederholung VU Datenmodellierung VU Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester
MehrWS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #3. SQL (Teil 1)
Vorlesung #3 SQL (Teil 1) Fahrplan Wiederholung/Zusammenfassung Relationales Modell Relationale Algebra Relationenkalkül Geschichte der Sprache SQL SQL DDL (CREATE TABLE...) SQL DML (INSERT, UPDATE, DELETE)
MehrDatenintegrität. Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung
Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung Statische vs. dynamische Integritätsbedingungen Statische Integritätsbedingungen Bedingungen
MehrDatenmodellierung VU Einführung SS 2016
184.685 Datenmodellierung VU Einführung SS 2016 Nysret Musliu, Sebastian Skritek Institut für Informationssysteme Technische Universität Wien Nysret Musliu, Sebastian Skritek Seite 1 1. Motivation Motivation
MehrDatenbankentwurf. VO Datenmodellierung. Katrin Seyr. Institut für Informationssysteme Technische Universität Wien.
Datenbankentwurf Datenbankentwurf VO Datenmodellierung Katrin Seyr Institut für Informationssysteme Technische Universität Wien Katrin Seyr Seite 1 Datenbankentwurf 1. Überblick Überblick Wiederholung:
MehrDas Relationale Modell
Kapitel 3 Das Relationale Modell 1 / 50 Generelle Anmerkungen Wurde in den Siebzigern von E.F.Codd entwickelt (er bekam den Turing Award dafür) Im Moment das am weitesten verbreitete Datenmodell Hat die
MehrReferentielle Integrität
Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Integritätsbedingungen Bedingungen an den Zustand der Datenbasis dynamische
MehrDatenbanksysteme 2013
Datenbanksysteme 2013 Kapitel 8: Datenintegrität Vorlesung vom 14.05.2013 Oliver Vornberger Institut für Informatik Universität Osnabrück Datenintegrität Statische Bedingung (jeder Zustand) Dynamische
MehrStudierende, die diese Vorlesung hören, haben sich auch für folgende Lehrveranstaltungen interessiert:
Studierende, die diese Vorlesung hören, haben sich auch für folgende Lehrveranstaltungen interessiert: Lehrangebot des FG Informationssysteme Modellierung Datenbanken Internet-Suchmaschinen Information
MehrWie definieren wir das Relationen-
Wie definieren wir das Relationen- schema für eine Datenbank? Professoren PersNr Name Rang Raum 2125 Sokrates C4 226 2126 Russel C4 232 2127 Kopernikus C3 310 2133 Popper C3 52 2134 Augustinus C3 309 2136
MehrInformatik für Ökonomen II: Datenintegrität. Prof. Dr. Carl-Christian Kanne
Informatik für Ökonomen II: Datenintegrität Prof. Dr. Carl-Christian Kanne 1 Konsistenzbedingungen DBMS soll logische Datenintegrität gewährleisten Beispiele für Integritätsbedingungen Schlüssel Beziehungskardinalitäten
MehrRelationale 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
MehrRelationale Abfragesprachen
Relationale Abfragesprachen Relationale Abfragesprachen VO Datenmodellierung Katrin Seyr Institut für Informationssysteme Technische Universität Wien Katrin Seyr Seite 1 Relationale Abfragesprachen 1 Überblick
MehrEinführung in Datenbanksysteme
Prof. Dr. Ralf Möller TUHH Das relationale Datenmodell Das relationale Datenmodell 2.1 3.1 RDM: Überblick über die Konzepte (1) Eine Datenbank ist eine Menge benannter Relationen. Eine Relation ist eine
MehrReferentielle Integrität
Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Integritätsbedingungen Bedingungen an den Zustand der Datenbasis dynamische
MehrSchema: konkrete Beschreibung einer bestimmten. (unter Verwendung eines Datenmodells)
Datenmodellierung DBS kann vieles, aber nicht alles! Benutzer muss spezifizieren Anforderungen einer Anwendung Art von zu speichernden Daten Zwei wichtige Konzepte beim Entwurf: Datenmodell: Konstrukte
MehrKapitel 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
MehrDatenmodellierung. VU , SS 2016 Relationale Abfragesprachen SQL. Nysret Musliu, Sebastian Skritek
Relationale Abfragesprachen Datenmodellierung VU 184685, SS 2016 Relationale Abfragesprachen SQL Nysret Musliu, Sebastian Skritek Institut für Informationssysteme Technische Universität Wien Nysret Musliu,
MehrObjektorientierte Datenbanken
OODB 1 Slide 1 Objektorientierte Datenbanken Vorlesung 1 Sebastian Iwanowski FH Wedel OODB 1 Slide Organisatorisches Vorlesung Mittwochs, 09:30 10:5 Raum HS Übung Dienstags, 09:30 10:5 (erstmalig am 1.0.)
Mehr3. 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
MehrRückblick: Relationales Modell
Rückblick: Relationales Modell Relationales Modell als vorherrschendes Datenmodell Relationen (Tabellen) besitzen Attribute (Spalten) mit Wertebereichen und beinhalten Tupel (Zeilen) Umsetzung eines konzeptuellen
MehrAufgabensammlung 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
MehrDatenbanksysteme (1)
Kapitel 18: Datenbanksysteme (1) Einführung in die Informatik Wintersemester 2007/08 Prof. Bernhard Jung Übersicht Datenbanken und Datenbanksysteme Entity/Relationship-Modell (ERM) Das Relationale Datenmodell
MehrRückblick: Entity-Relationship-Modell
Rückblick: Entity-Relationship-Modell Entity-Relationship-Modell für konzeptuellen Entwurf Entitytypen (entity types) (z.b. Studenten) Beziehungstypen (relationships) (z.b. hören) Attribute beschreiben
MehrQuery Languages (QL) Relationale Abfragesprachen/Relational
Relationale Algebra Relationale Abfragesprachen/Relational Query Languages (QL) Abfragesprachen: Daten aus einer Datenbank zu manipulieren und abzufragen (retrieve information) Das relationalle Modell
MehrDas relationale Datenmodell
Das relationale Datenmodell Konzepte Attribute, Relationenschemata, Datenbank-Schemata Konsistenzbedingungen Beispiel-Datenbank Seite 1 Einführung Zweck datenmäßige Darstellung von Objekten und Beziehungen
MehrGrundlagen: Datenbanken
Grundlagen: Datenbanken 1. Zentralübung Harald Lang FAQs Ist der Prüfungtermin schon bekannt? Termin: Mi. 18.02.2015, 08:00 Uhr FAQs Gilt der Bonus auch für die Nachholklausur? Ja. Selbst dann, wenn die
MehrEinführung, Entity-Relationship Modell 9. DATENBANKSYSTEME: DAS ENTITY RELATIONSHIP MODELL
Einführung, Entity-Relationship Modell 9. DATENBANKSYSTEME: DAS ENTITY RELATIONSHIP MODELL 304 Literatur, Quellen Literatur: Kemper, Eickler: Datenbanksysteme: Eine Einführung. Oldenbourg Verlag, 9. Auflage,
MehrKonzeptuelle Modellierung
Kapitel 2 Konzeptuelle Modellierung 2.1 Das Entity-Relationship-Modell Die grundlegenden Modellierungsstrukturen dieses Modells sind die Entities (Gegenstände) und die Relationships (Beziehungen) zwischen
MehrDatenintegrität. Bisherige Integritätsbedingungen
Datenintegrität Integitätsbedingungen chlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Bedingungen an den Zustand der Datenbasis dynamische Bedingungen an Zustandsübergänge
MehrDatenbanken Unit 4: Das Relationale Modell & Datenintegrität
Datenbanken Unit 4: Das Relationale Modell & Datenintegrität 15. III. 2016 Outline 1 Organisatorisches 2 SQL 3 Relationale Algebra Notation 4 Datenintegrität Organisatorisches Erster Zwischentest: nach
MehrWirtschaftsinformatik 7a: Datenbanken. Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte
Wirtschaftsinformatik 7a: Datenbanken Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte Drei Gäste bezahlen nach einem gemeinsamen Abendessen eine Rechnung von 30 Euro, so dass jeder 10 Euro gibt.
MehrInformationssysteme. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Sommersemester
Informationssysteme Sommersemester 2016 Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern smichel@cs.uni-kl.de Wiederholung: Betriebliche Informationssysteme ˆ spiegeln Geschäftsmodell eines Unternehmens
MehrTermin 12: Datenbanksysteme (2) - Einführung in SQL
Termin 12: Datenbanksysteme (2) - Einführung in SQL Grundlagen der Informatik Wintersemester 2006/07 Prof. Bernhard Jung Übersicht 1. Einführung SQL 2. Datenbankanfragen mit SQL (select from where) 3.
Mehr3. Grundlagen relationaler Datenbanksysteme
3. Grundlagen relationaler Datenbanksysteme Hier nur kurze Rekapitulation, bei Bedarf nachlesen 3.1 Basiskonzepte des Relationenmodells 1 Darstellung der Miniwelt in Tabellenform (DB = Menge von Relationen
MehrKap. 3 Relationenmodell mit relationaler Algebra
Kap. 3 Relationenmodell mit relationaler Algebra Kap. 3.1. Trägermenge Seien D 1, D 2,..., D k Domänen: (Typen, Arten, Sorten, Wertmengen) z.b. string integer real Boolean DateTime BLOB, TIFF-image, HTML-Doc,
MehrDatenbankanwendungen werden oft über einen sehr langen Zeitraum (z.b. Jahrzehnte) eingesetzt
2. Datenbankentwurf Motivation Datenbankanwendungen werden oft über einen sehr langen Zeitraum (z.b. Jahrzehnte) eingesetzt Fehler sind umso teurer zu beheben, je weiter die Entwicklung bzw. der Einsatz
MehrWS 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
MehrRelationen-Algebra. Prof. Dr. T. Kudraß 1
Relationen-Algebra Prof. Dr. T. Kudraß 1 Relationale Anfragesprachen Query Language (QL): Manipulation und Retrieval von Daten einer Datenbank Relationenmodell erlaubt einfache, mächtige Anfragesprachen
MehrKapitel 2: Das Relationale Modell
Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Datenbanksysteme I Wintersemester 2012/2013 Kapitel 2: Das Relationale
MehrRelationale Algebra Datenbanken I (Systemorientierte Informatik IV) Sommersemester Mengenoperationen
Concept Content.. Information Topic Relationale Algebra Datenbanken I (Systemorientierte Informatik IV) Sommersemester 2007 Gunar Fiedler (fiedler@is.informatik.uni-kiel.de) Institut für Informatik Arbeitsgruppe
MehrDatenbankentwurf. Kapitel 3. Datenbankentwurf 76 / 508
Kapitel 3 Datenbankentwurf 76 / 508 Phasen des Datenbankentwurfs Phasen des Datenbankentwurfs Anforderungsanalyse Spezifikation Konzeptueller Entwurf Konzeptuelles Schema Logischer Entwurf Logisches Schema
MehrKapitel 3: Datenbanksysteme
LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2014 Kapitel 3: Datenbanksysteme Vorlesung:
MehrKapitel 1: Einführung 1.1 Datenbanken?
Kapitel 1: Einführung 1.1 Datenbanken? 1. Einführung 1.1. Datenbanken Grundlagen der Datenbanksysteme, WS 2012/13 29. Oktober 2012 Seite 1 1. Einführung 1.1. Datenbanken Willkommen! Studierenden-Datenbank
MehrDatenbanksysteme. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2017/18.
Datenbanksysteme Wintersemester 2017/18 Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern smichel@cs.uni-kl.de Wiederholung VL Informationssysteme Abbilden eines Teilaspekts der realen Welt Was wollen
Mehr2.5 Relationale Algebra
2.5 Relationale Algebra 2.5.1 Überblick Codd-vollständige relationale Sprachen Relationale Algebra Abfragen werden durch exakte Angabe der auf den Relationen durchzuführenden Operationen formuliert Relationenkalküle
MehrKapitel 2: Das Relationale Modell
Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Wintersemester 2006/2007 Kapitel 2: Das Relationale Modell Vorlesung:
MehrGeoinformation Abbildung auf Tabellen
Folie 1 von 32 Geoinformation Abbildung auf Tabellen Folie 2 von 32 Abbildung auf Tabellen Übersicht Motivation des relationalen Datenmodells Von Objekten zu Tabellen Abbildung von Objekten Schlüssel Abbildung
MehrDatenbanksysteme SS 2009
Datenbanksysteme SS 2009 Kapitel 2: Konzeptuelle Modellierung Vorlesung vom 16.04.09 Oliver Vornberger Institut für Informatik Universität Osnabrück 1 Das Entity-Relationship-Modell voraussetzen Vorgänger
MehrGrundlagen von Datenbanken. Relationale Algebra und algebraische Optimierung
Grundlagen von Datenbanken Relationale Algebra und algebraische Optimierung Relationale Algebra Überblick Selektion: σ Projektion: π Mengenoperationen:,,,, Kartesisches Produkt: Verbund (Join): Umbenennung:
MehrKapitel DB:IV (Fortsetzung)
Kapitel DB:IV (Fortsetzung) IV. Logischer Datenbankentwurf mit dem relationalen Modell Das relationale Modell Integritätsbedingungen Umsetzung ER-Schema in relationales Schema DB:IV-46 Relational Design
MehrÜbung zur Vorlesung Einführung in die Informatik für Hörer anderer Fachrichtungen (WZW) IN8003, SS 2011 Prof. Dr. J. Schlichter
Ü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 BSc.,
MehrVO Datenmodellierung. Katrin Seyr
Datenintegrität Datenintegrität VO Datenmodellierung Katrin Seyr Institut für Informationssysteme Technische Universität Wien Katrin Seyr Seite 1 Datenintegrität 1. Überblick Überblick 1 Überblick 2 Integritätsbedingungen
MehrUniversität Augsburg, Institut für Informatik WS 2009/2010 Prof. Dr. W. Kießling 06. Nov Dr. A. Huhn, F. Wenzel, M. Endres Lösungsblatt 2
Universität Augsburg, Institut für Informatik WS 2009/2010 Prof. Dr. W. Kießling 06. Nov. 2009 Dr. A. Huhn, F. Wenzel, M. Endres Lösungsblatt 2 Aufgabe 1: ER-Modellierung 1. Siehe Unterstreichungen in
MehrGruppe B Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.
Gruppe B Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit. PRÜFUNG AUS DATENMODELLIERUNG (184.685) GRUPPE B 22.06.2012 Matrikelnr. Familienname
MehrAbstraktionsschichten. Das Relationale Datenmodell
Abstraktionsschichten. Das Relationale Datenmodell Verschiedene Abstraktionsebene Data in Beziehung zur Application Data in Beziehung zur Datenmodell Data in Beziehung zur physischen Darstellung Datenunabhängigkeit
Mehrkonzeptueller Entwurf mittels E/R-Modell einfache Funktionalitäten n-stellige Relationships (n>2) schwache Entities
Datenbankentwurf bisher: konzeptueller Entwurf mittels E/R-Modell einfache Funktionalitäten (min, max)-notation n-stellige Relationships (n>2) schwache Entities nun: Generalisierung, Aggregation, UML-Modell,
MehrDatenbanksysteme 2015
Datenbanksysteme 2015 Kapitel 12: Relationale Entwurfstheorie Oliver Vornberger Institut für Informatik Universität Osnabrück Funktionale Abhängigkeiten ist funktional abhängig von r, t R : r. = t. r.
MehrHandout zur Unit Datenmodellierung Web-Technologien Datenmodellierung Prof. Dr. rer. nat. Nane Kratzke
Handout zur Unit Web-Technologien 1 Prof. Dr. rer. nat. Nane Kratzke Praktische Informatik und betriebliche Informationssysteme Raum: 17-0.10 Tel.: 0451 300 5549 Email: nane.kratzke@fh-luebeck.de (Praktische
MehrEinführung in die Informatik II
Einführung in die Informatik II Relationale Datenbanken und SQL Theorie und Anwendung Prof. Dr. Nikolaus Wulff Gründe für eine Datenbank Meist werden Daten nicht in XML-Dokumenten, sondern innerhalb einer
MehrDaten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell. Jetzt: -> Formulierung in DDL
Daten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell Jetzt: -> Formulierung in DDL Daten-Definitionssprache (DDL) DDL ist Teil von SQL (Structured
MehrDatenmodelle. Einführung in das Entity-Relationship-Modell. Datenbankmodelle. Beispiel für ein ER-Schema. Kunde( Meier, , ) 41, Meier
Einführung in das Entity-Relationship-Modell Datenmodelle Datenmodelle dienen der Darstellung der Informationsstruktur, nicht der Darstellung der Informationen selbst. Motivation Grundbestandteile von
MehrDatenmodelle dienen der Darstellung der Informationsstruktur, nicht der Darstellung der Informationen selbst. Motivation
Einführung in das Entity-Relationship-Modell Datenmodelle Datenmodelle dienen der Darstellung der Informationsstruktur, nicht der Darstellung der Informationen selbst. Motivation Grundbestandteile von
MehrDatenbanken Entity-Relationship-Modell und Datenbankentwurf 1. Andreas Heß Hochschule Furtwangen
Datenbanken Entity-Relationship-Modell und Datenbankentwurf 1 Andreas Heß Hochschule Furtwangen Inhalte heute Einführung ins Entity-Relationship-Modell Einführung ins relationale Modell Umsetzung vom E/R-
MehrNormalisierung I. Ziele
Normalisierung I Lehr- und Forschungseinheit Datenbanken und Informationssysteme 1 Ziele Formale Ermittlung von Schlüsselkandidaten Funktionale Abhängigkeiten Normalformen Lehr- und Forschungseinheit Datenbanken
MehrDatenbanken 1. Relationale Algebra. Nikolaus Augsten. FB Computerwissenschaften Universität Salzburg
Datenbanken 1 Nikolaus Augsten nikolaus.augsten@sbg.ac.at FB Computerwissenschaften Universität Salzburg http://dbresearch.uni-salzburg.at Sommersemester 2015 Version: 29. Juni 2015 Augsten (Univ. Salzburg)
MehrDatenbanken Unit 3: Das relationale Modell
Datenbanken Unit 3: Das relationale Modell 7. III. 2017 Outline 1 SQL 2 Das ER Modell Zusammenfassung 3 Das Relationale Modell Termin zweiter Zwischentest UE-Tests (Thema: SQL) zweiter Zwischentest findet
MehrMedizininformatik Software Engineering
Vorlesung Software Engineering Inhaltsverzeichnis 1. Einleitung 2. Software und Medizinprodukt 3. Vorgehensmodelle 4. Strukturierter Entwurf von Echtzeitsystemen 4.1 Echzeit, was ist das? 4.2 Einführung
MehrVorlesung DBIS I (WS 2005/2006) Teil 4
otivation Das Relationenmodell Vorlesung Prof. Johann Christoph Freytag, Ph.D. Institut für Informatik Humboldt-Universität zu Berlin WS 2005/2006 Ziel des Relationenmodells Hoher Grad an Datenunabhängigkeit
MehrTU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.
TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Übung zur Vorlesung Einführung in die Informatik 2 für Ingenieure (MSE) Alexander van Renen (renen@in.tum.de)
MehrDieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.
Thomas Studer Relationale Datenbanken: Von den theoretischen Grundlagen zu Anwendungen mit PostgreSQL Springer, 2016 ISBN 978-3-662-46570-7 Dieser Foliensatz darf frei verwendet werden unter der Bedingung,
Mehr9. 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
MehrInformations-, Daten- und Wissensmanagement
Informations-, Daten- und Wissensmanagement Lesen Sie den Artikel Schürfen in der Datenhalde und beantworten Sie folgende Fragen: Was ist Wissensmanagement? Forschungsgebiet / Managementthema, das sich
MehrInhalt. 2.1 Datenbankentwurf. 2.2 Relationales Modell. 2.3 Relationale Entwurfstheorie. 2.4 Relationale Algebra. 2.5 Structured Query Language (SQL)
2. Datenbanken Inhalt 2.1 Datenbankentwurf 2.2 Relationales Modell 2.3 Relationale Entwurfstheorie 2.4 Relationale Algebra 2.5 Structured Query Language (SQL) 2 2.1 Datenbankentwurf Datenbankanwendungen
Mehr