Informatik II Vorlesung am D-BAUG der ETH Zürich
|
|
- Rudolph Melsbach
- vor 5 Jahren
- Abrufe
Transkript
1 Informatik II Vorlesung am D-BAUG der ETH Zürich Vorlesung 11, Datenbanksysteme: Das Entity Relationship (ER) Modell, das Relationale Modell und SQL.
2 Literatur, Quellen Literatur: Kemper, Eickler: Datenbanksysteme: Eine Einführung. Oldenbourg Verlag, 9. Auflage, Quellen: Basismaterial wurde von Prof. Donald Kossmann & Martin Kaufmann freundlicherweise zur Verfügung gestellt. Weitere Quelle: Folien zu Datenbanksysteme: Eine Einführung, Lehrstuhl III Datenbansysteme, Prof. Kemper, TU München 2
3 Ziele Nutzen von Datenbanksystemen verstehen, Modellierungskenntnisse ER Modell (Modellierung der Weltsicht) Relationales Modell (Modellierung für die DB) Datenbanksystem anwenden SQL 3
4 Datenbankverwaltungssysteme Ein Datenbankverwaltungssystem (DBMS) ist ein Werkzeug zur Erstellung und Ausführung datenintensiver Anwendungen grosse Datenmengen grosse Datenströme 4
5 Typische Anwendungen Bank z.b. Konten / Geldtransfer Bibliothek z.b. Bücher / Ausleihen Facebook, Twitter, z.b. Freunde, Sende Tweet Geoinformationssysteme z.b. Topographische Information, "Erzeuge Karte" 5
6 Wozu Datenbanksysteme? Vermeide Redundanz und Inkonsistenz Deklarativer Zugriff auf die Daten und Unabhängigkeit von der Implementation (physische Datenunabhängigkeit) Synchronisiere gleichzeitigen Datenzugriff Sicherheit, Vertraulichkeit Minimiere Kosten und Aufwand Ähnliche Funktionalität selbst zu implementieren würde Jahre in Anspruch nehmen 6
7 Datenmodellierung Auschnitt der realen Miniwelt konzeptuelles Schema (ER-Schema) intellektuelle Modellierung halbautomatische Transformation XML relationales Schema objektorientiertes Schema 7
8 1. Teil heutige Vorlesung: Modellierung (ER-Modell) Studenten Professoren Vorlesungen reale Welt: Universität konzeptuelle Modellierung MatrNr Name Studenten hören Professoren geben PersNr Name Vorlesungen VorlNr Titel 8
9 2. Teil heutige Vorlesung: Relationales Datenmodell Studenten hören Vorlesungen Legi Name Legi VorlNr VorlNr Titel Fichte Jonas Grundzüge Glaube und Wissen... select Name from Studenten, hören, Vorlesungen where Studenten.Legi= hören.legi and hören.vorlnr= Vorlesungen.VorlNr and Vorlesungen.Titel = `Grundzüge ; π name (studenten hören vorlesungen) update Vorlesungen set Title = `Grundzüge der Logik where VorlNr = 5001; 9
10 Entity Relationship Modell 10
11 Entity/Relationship (ER) Modell Legi Name Semester Entity = Gegenstandstyp Relationship = Beziehungstyp Schlüssel (Identifikation) Studenten hören Hörer Kurs Vorlesungen Attribut / Eigenschaft Rolle Nr Titel KP 11
12 Modell einer Universität vorraussetzen Legi Vorgänger Nachfolger VorlNr Name Studenten hören Vorlesungen KP Semester Titel Note prüfen lesen PersNr Rang Name Assistent arbeitenfür Professoren Raum Fachgebiet PersNr Name 12
13 ... in natürlicher Sprache Studenten haben LegiNr, Name und Semester. Die LegiNr identifziert einen Studenten eindeutig. Vorlesungen haben eine VorlNr, Kreditpunkte und einen Titel. VorlNr identifiziert eine Vorlesung eindeutig. Professoren haben PersNr, Name, Rang und Raum. PersNr identifiziert einen Professor eindeutig. Assistenten haben PersNr, Name und Fachgebiet. PersNr. identifiziert einen Assistenten eindeutig. Studenten hören Vorlesungen Vorlesungen können Voraussetzung für andere Vorlesungen sein. Professoren lesen Vorlesungen. Assistenten arbeiten für Professoren Studenten werden von Professoren über Vorlesungen geprüft. Studenten erhalten Noten als Teil dieser Prüfungen. Ist das die einzig mögliche Interpretation? Nein: zu einem ER-Model gehört immer noch Dokumentation und/oder gesunder Menschenverstand 13
14 Ein Modell der Welt Code Name neighbour Country is_in City ID Name Population capital_of Population Percentage spoken_in isofficial Name countrylanguage 14
15 Warum ER? Vorteile ER Diagramme sind einfach zu erstellen und editieren ER Diagramme sind aufgrund der grafischen Darstellung einfach zu verstehen (vom Laien) ER Diagramme beschreiben alle Informationsanforderungen Allgemeines Viele Tools verfügbar Kontroverse, ob ER/UML in der Praxis von Nutzen ist Keine Kontroverse, dass jeder ER/UML lernen sollte 15
16 Funktionalitätsangaben E E 1 R 2 R E 1 x E 2 1:1 E 1 E 2 1:N N:1 N:M 16
17 Funktionalitäten bei n-stelligen Beziehungen E 1 P N M E n R E 2 1 E k R : E 1 x... x E k-1 x E k+1 x... x E n E k 17
18 Beispiel: Seminar Um das zu verstehen, denken Sie am besten in Abbildungen (Funktionen): eine Abbildung f(x,y) hat pro Parameter x,y nur einen Wert. Studenten N betreuen 1 1 Professoren Seminarthemen Note betreuen: Professoren x Studenten Seminarthemen betreuen: Seminarthemen x Studenten Professoren 18
19 Konsistenzbedingungen des Seminar Einschränkungen 1. Studenten dürfen bei einem Professor nur ein Seminarthema bearbeiten 2. Studenten können dasselbe Seminarthema nur einmal bearbeiten Möglichkeiten 1. Professoren können das Seminarthema für andere Studenten wiederverwenden 2. Dasselbe Thema kann von verschiedenen Professoren verwendet werden 19
20 Universität mit Funktionalitäten vorraussetzen Legi Name Studenten N hören Vorgänger Nachfolger M N M Vorlesungen VorlNr KP Semester N M N Titel Note prüfen lesen PersNr 1 1 Rang Name Assistent N arbeitenfür 1 Professoren Raum Fachgebiet PersNr Name 20
21 Modell der Welt mit Funktionalitäten Code Name borders_on N M Country 1 is_in N City ID Name Population N 1 1 capital_of Population Percentage spoken_in isofficial M Name countrylanguage 21
22 Daumenregeln Wann Attribut, wann Entität? Entität, wenn das Konzept mehr als eine Beziehung hat Attribut, wenn das Konzept nur eine 1:1 Beziehung hat Partitionierung von ER-Modellen Realistische Modelle sind grösser als eine Seite Nach Bereichen / Organisationseinheiten partitionieren Kein gutes automatisches Graphenpartitionierungstool bekannt Tipps Keine Redundanz modellieren, keine vermeintliche Leistungsverbesserung anbringen Je weniger Entitäten desto besser konzis, vollständig, nachvollziehbar, korrekt 22
23 ER Modellierung: Zusammenfassung ER beschreibt eine Miniwelt Das "was" und die Regeln ER ist statisch. Es beschreibt keine Übergänge Nützlich zum Erstellen von Software zur Beantwortung von (An)fragen über die Miniwelt es folgt nun: ER-Modell relationales Modell Ähnliche Modellierungsmöglichkeiten bietet UML (mehr auf OOP zugeschnitten) Auch andere graphische Darstellungen des ER Modells gebräuchlich, z.b. "Krähenfussnotation" optisch näher bei UML 23
24 Relationales Modell Die Welt in Tabellen 24
25 Relationales Modell, Formalismus Relation R R D 1 x... x D n D 1, D 2,..., D n sind Domänen Tupel: t R Beispiel: Telefonbuch string x string x integer Beispiel: t = ( Mickey Mouse, Main Street, 4711) Relationenschemata werden wie folgt beschrieben Telefonbuch: {[Name: string, Strasse: string, Telefon#:integer]} {[...]} deuten an, dass ein Schema eine Menge von Tupeln [] ist Name des Attributes Typ des Attributes 25
26 Relationales Modell Telefonbuch Name Strasse Telefon# Mickey Mouse Main Street 4711 Minnie Mouse Broadway Donald Duck Broadway Ausprägung: Zustand der Datenbank Schlüssel: minimale Menge von Attributen, welche ein Tupel eindeutig identifizieren z.b. {Telefon#} oder {Name, Geburtstag} Primärschlüssel (durch Unterstreichung hervorgehoben): Ausgewählter Schlüssel, welcher üblicherweise zur Identifikation eines Tupels in einer Relation verwendet wird. 26
27 Uni Schema vorraussetzen Legi Name Studenten N hören Vorgänger M N Vorlesungen Nachfolger M VorlNr KP Semester N M N Titel Note prüfen lesen PersNr Name Assistent N arbeitenfür Professoren Rang Raum Fachgebiet PersNr Name 27
28 Regel #1: Darstellung von Entities Studenten: {[Legi:integer, Name:string, Semester: integer]} Vorlesungen: {[VorlNr:integer, Titel: string, KP: integer]} Professoren: {[PersNr:integer, Name: string, Rang: string,raum: integer]} Assistenten: {[PersNr:integer, Name: string, Fachgebiet: string]} 28
29 Regel #2: Darstellung von Beziehungen A 21 A E 2 E 1 R... E n A 2k A 1k1 A 1 R R A kr A n1 A nkn R R A11,..., A1 k, A21,..., A2,..., 1,...,, 1,..., 1 k A 2 n Ank A A n kr R:{[ ]} Schlüssel E 1 Schlüssel E 2 Schlüssel E n Attribute von R 29
30 Darstellung von Beziehungen hören: {[Legi: integer, VorlNr: integer]} lesen : {[PersNr: integer, VorlNr: integer]} arbeitenfür : {[AssiPersNr: integer, ProfPersNr: integer]} Fremdschlüssel, identifizieren Tupel aus anderen Entitäten voraussetzen: {[Vorgänger: integer, Nachfolger: integer]} prüfen : {[Legi: integer, VorlNr: integer, PersNr: integer, Note: decimal]} 30
31 Ausprägung von hören Studenten Legi Legi Legi hören VorlNr Vorlesungen VorlNr VorlNr Studenten N hören M Vorlesungen 31
32 Zur Regel #2: Bennenung der Attribute? Spezifiziert das ER-Modell Rollen, dann nimm den Namen der jeweiligen Rolle voraussetzen:{[vorgänger:string, Nachfolger:string]} vorraussetzen Vorgänger Nachfolger Vorlesungen andernfalls benutze die Namen der Schlüsselattribute der Entitäten bei Mehrdeutigkeit erfinde aussagekräftigen Namen borders_on: {[Code: string, Neighbour: string]} Country Code N borders_on M Country Neighbour 32
33 Regel #3: Zusammenfassung von Relationen Vorlesungen : Professoren: lesen: {[VorlNr, Title, CP]} {[PersNr, Name, Level, Room]} {[VorlNr, PersNr]} Fasse (nur) Relationen mit gleichem Schlüssel zusammen (also auch nur (N:1), (1:N) oder (1:1) Beziehungen) Zusammenfassen: Vorlesungen : {[VorlNr, Title, CP, gelesenvon]} Professoren : {[PersNr, Name, Level, Room]} Professoren lesen 1 N Vorlesungen 33
34 Ausprägung von Professoren und Vorlesungen Professoren PersNr Name Rang Raum 2125 Sokrates FP Russel FP Kopernikus AP Popper AP Augustinus AP Curie FP Kant FP 7 Vorlesungen VorlNr Titel KP gelesenvon 5001 Grundzüge Ethik Erkenntnistheorie Mäeutik Logik Wissenschaftstheorie Bioethik Der Wiener Kreis Glaube und Wissen Die 3 Kritiken Professoren lesen 1 N Vorlesungen 34
35 Das funktioniert NICHT Professoren Vorlesungen PersNr Name Rang Raum liest VorlNr Titel KP 2125 Sokrates FP Grundzüge Sokrates FP Ethik Sokrates FP Erkenntnistheorie Mäeutik Augustinus AP Logik Curie FP 36?? 5052 Wissenschaftstheorie 3 Problem: Redundanz und Anomalien PersNr ist kein gültiger Schlüssel für Professoren mehr 5216 Bioethik Der Wiener Kreis Glaube und Wissen Die 3 Kritiken 4 Professoren lesen 1 N Vorlesungen 35
36 Relationales Modell der Uni-DB Professoren Studenten Vorlesungen PersNr Name Rang Raum Legi Name Semester VorlNr Titel KP gelesenvon 2125 Sokrates FP Xenokrates Grundzüge Russel FP Jonas Ethik Kopernikus AP Fichte Erkenntnistheorie Popper AP Aristoxenos Mäeutik Augustinus AP Schopenhauer Logik Curie FP Carnap Wissenschaftstheorie Kant FP Theophrastos Bioethik Feuerbach Der Wiener Kreis Glaube und Wissen Assistenten voraussetzen 4630 Die 3 Kritiken PerslNr Name Fachgebiet Boss Vorgänger Nachfolger 3002 Platon Ideenlehre prüfen 3003 Aristoteles Syllogistik Legi Nr PersNr Note 3004 Wittgenstein Sprachtheorie Rhetikus Planetenbewegung Newton Keplersche Gesetze Spinoza Gott und Natur hören Legi VorlNr
37 Die Welt in Tabellen (borders_on nicht modelliert) 37
38 Die Relationale Algebra und SQL 38
39 Die relationale Algebra Selektion Projektion kartesisches Produkt Join (Verbund) Umbenennung Vereinigung Mengendifferenz Division Durchschnitt F Semi-Join (links) E Semi-Join (rechts) C linker äusserer Join D rechter äusserer Join werden wir nicht diskutieren 39
40 SQL (Structured Query Language) Nachfolger von Sequel = Structured English Query Language Familie von Standards Anfrage- (Query)-Sprache Anfragen Datendefinitionssprache (DDL) Schemas Datenmanipulationssprache (DML) Updates SQL implementiert die Relationale Algebra 40
41 Selektion Auswahl von Tupeln (Zeilen) der Relation (Tabelle), so dass das Selektionsprädikat jeweils erfüllt ist. Semester > 10 (Studenten) Legi Name Semester Xenokrates Jonas 12 41
42 SQL: Anzeigen einer existierenden Tabelle SELECT * FROM Tabellenname gibt den Inhalt eine Tabelle (Relation) aus SELECT * FROM Professoren 5/21/
43 SQL Selektion SELECT * FROM Tabellen WHERE Selektionsprädikat entspricht der Selektion SELECT * FROM country WHERE SurfaceArea < 10 σ SurfaceArea<10 (country) 5/21/
44 Projektion π Extraktion von Attributen (Spalten) der Relation (Tabelle) π Rang (Professoren) Level FP AP 44
45 Einfaches SQL Statement SELECT Spaltennamen FROM Tabellennamen entspricht der Projektion π ohne Duplikatelimination: SELECT Rang FROM Professoren 5/21/
46 Projektion SELECT DISTINCT Spaltennamen FROM Tabellennamen entspricht der Projektion π: SELECT DISTINCT Rang FROM Professoren π Rang (Professoren) 5/21/
47 Projektion Anderes Beispiel SELECT Name, Population, SurfaceArea FROM country π Name,Population,SurfaceArea (country) 5/21/
48 Selektion und Projektion SELECT Spalten FROM Tabellen WHERE Selektionsprädikat entspricht der Projektion auf das Ergebnis der Selektion SELECT Name, Population FROM country WHERE SurfaceArea < 10 π Name,Population (σ SurfaceArea<10 (country)) 5/21/
49 Kartesisches Produkt enthält alle L R mögliche Paare von Tupeln aus L und R L A B C a 1 b 1 c 1 a 2 b 2 c 2 R D E d 1 e 1 d 2 e 2 = L R L R A B C D E a 1 b 1 c 1 d 1 e 1 a 1 b 1 c 1 d 2 e 2 a 2 b 2 c 2 d 1 e 1 a 2 b 2 c 2 d 2 e 2 49
50 Kartesisches Produkt Professoren hören Professoren hören PersNr Name Rang Raum Legi Nr 2125 Sokrates FP Sokrates FP Kant FP Riesiges Ergebnis ( Professoren hören ) Wird meist in Verbindung mit Selektion eingesetzt Vermeidung riesiger Zwischenergebisse durch Einführung eines separaten Operators (Join) 50
51 Kartesisches Produkt SELECT... FROM Tabelle1, Tabelle2... entspricht dem kartesischen Produkt Tabelle1 Tabelle2 SELECT * FROM studenten, hören studenten hören 5/21/
52 Umbenennung Umbenennung von Relationen Ermittlung indirekter Vorgänger 2. Stufe der Vorlesung 5216 V1. Vorgänger( V2. Nachfolger=5216 V1.Nachfolger = V2.Vorgänger ( V1 (voraussetzen) V2 (voraussetzen))) Umbennung von Attributen Voraussetzung Vorgänger (voraussetzen) 52
53 Umbenennung von Attributen SELECT... Name as NeuerName... FROM Tabellen... entspricht der Umbenennung. SELECT Titel, gelesenvon as Dozent FROM Vorlesungen π Titel,Dozent ( gelesenvon Dozent (Vorlesungen)) 53
54 Umbenennung von Tabellen SELECT... FROM Tabellenname Alias... entspricht der Umbenennung. wozu? kommt gleich! SELECT v.titel FROM Vorlesungen v π Titel ( V (Vorlesungen)) 54
55 Kartesisches Produkt plus Selektion SELECT * FROM studenten, hören WHERE studenten.legi = hören.legi σ studenten.legi = hören.legi (studenten hören) 5/21/
56 Etwas kürzer mit Umbenennung SELECT * FROM studenten s, hören h WHERE s.legi = h.legi σ s.legi = h.legi (ρ s (studenten) ρ h (hören)) 5/21/
57 Der natürliche Verbund (Join) Gegeben Relationen: R(A 1,..., A m, B 1,..., B k ) S(B 1,..., B k, C 1,..., C n ) 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 57
58 Beispiel: hören Vorlesungen = L R L R R L R L 58
59 Beispiel: Studenten hören = 59
60 Drei-Wege-Join: Studenten hören Vorlesungen Join ist assoziativ: (Studenten hören) Vorlesungen = Studenten (hören Vorlesungen) = 60
61 Join SELECT... FROM Tabelle1 NATURAL JOIN Tabelle2... entspricht dem Join SELECT * FROM studenten NATURAL JOIN hören Im Unterschied zu SELECT * FROM studenten s, hören h WHERE s.legi = h.legi kommt Legi nur einmal vor in der Tabelle: Join fasst gleichnamige Attribute zusammen. studenten A hören 5/21/
62 Allgemeiner Join (Theta-Join) Gegeben Relationen(-Schemata) R(A1,..., An) und S(B1,..., Bm) R S = (R x S) R R S S A 1 A 2... A n B 1 B 2... B m 62
63 Beispiel: Allgemeiner Join Relationen Züge(name, start, ziel,, länge) Gleise(station, nummer,, länge) Finde alle möglichen Gleise für den CIS Alpino in Zürich station= Zürich (Gleise) Züge.länge < Gleise.länge name= CIS (Züge) 63
Informatik II. Vorlesung am D-BAUG der ETH Zürich. Dr. Felix Friedrich und Dr. Hermann Lehner
Informatik II Vorlesung am D-BAUG der ETH Zürich Dr. Felix Friedrich und Dr. Hermann Lehner Vorlesung 12, 2018 Datenbanksysteme: Das Entity Relationship (ER) Modell, das Relationale Modell und SQL. Demo:
MehrDATENBANKSYSTEME: DAS ENTITY RELATIONSHIP MODELL UND DAS RELATIONALE MODELL
Einführung, Entity-Relationship Modell, Funktionalitäten, Formalismus des Relationalen Modells, Transformation des ER-Modells, Relationale Algebra: Selektion, Projektion, kartesisches Produkt, Umbenennung
MehrInformatik II Vorlesung am D-BAUG der ETH Zürich
Informatik II Vorlesung am D-BAUG der ETH Zürich Vorlesung 11, 2017 Datenbanksysteme: Das Entity Relationship (ER) Modell, das Relationale Modell und SQL. Literatur Literatur: Kemper, Eickler: Datenbanksysteme:
MehrLiteratur. Informatik II Vorlesung am D-BAUG der ETH Zürich. Ziele. Datenbankverwaltungssysteme
Literatur Literatur: Kemper, Eickler: Datenbanksysteme: Eine Einführung. Oldenbourg Verlag, 9. Auflage, 203. Informatik II Vorlesung am D-BAUG der ETH Zürich Dr. Felix Friedrich und Dr. Hermann Lehner
MehrEntity Relationship Modell
Entity Relationship Modell 2 Entity/Relationship (ER) Modell Legi Name Semester Entity = Gegenstandstyp Relationship = Beziehungstyp Schlüssel (Identifikation) Studenten hören Hörer Kurs Vorlesungen Attribut
MehrGrundlagen des relationalen Modells
Historische Entwicklung relationaler DBMS Grundlagen des relationalen 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:
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,
MehrWiederholung: Relationale Algebra
Vorlesung Datenbanksysteme vom 7.10.01 Wiederholung: Relationale Algebra Relationale Algebra Join-Operatoren Eigenschaften der relationalen Operatoren Grundlagen des relationalen Modells Seien D 1, D,,
MehrVorlesung 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,
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,,
MehrVorlesungen. Studenten. hören. Grundzüge. Fichte Glaube und Wissen Jonas
Das relationale eato aedatenmodell Studenten hören Vorlesungen MatrNr Name MatrNr VorlNr VorlNr Titel 26120 Fichte 25403 5022 5001 Grundzüge 25403... Jonas... 26120... 5001... 5022... Glaube und Wissen...
MehrÜbung 3. Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017)
Übung 3 Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017) Dennis Fischer dennis.fischer@tum.de http://home.in.tum.de/~fischerd/ Technische Universität München Fakultät für Informatik
MehrRelationale Darstellung von Entitytypen. Uni-Schema. Grundlagen des relationalen Modells
Grundlagen des relationalen Modells Seien D, D 2,, D n Domänen (Wertebereiche) elation: D x x D n Bsp.: Telefonbuch string x string x integer Mickey Mouse Mini Mouse Donald Duck Telefonbuch Straße Main
MehrDatenbanksysteme 2009
Datenbanksysteme 2009 Vorlesung vom 11.05.2009: Anfang von Kapitel 6: Das Relationale Modell Oliver Vornberger Institut für Informatik Universität Osnabrück Das Relationale Modell Wertebereiche (Domänen):
MehrDATENBANKSYSTEME: SQL
Datendefinitions-, Manipulations- und Anfrage-Sprache SQL, Datendefinition, Veränderung am Datenbestand, Einfache SQL Abfrage, Anfragen über mehrere Relationen, Mengenfunktionen, Aggregatfunktion und Gruppierung,
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)
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, 4711)
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,
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 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,
MehrGrundlagen des relationalen Modells
Grundlagen des relationalen Modells Seien D 1, D,, D n Domänen (Wertebereiche, Mengen) Eine Relation ist eine Teilmenge R D 1 x x D n Bsp.: Telefonbuch string x string x integer Ein Tupel ist jedes Element
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
MehrHistorische Entwicklung relationaler DBMS. Ted Codd: A Relational Model of Data for Large Shared Data Banks, Comm. ACM, Juni 1970, S.
Historische Entwicklung relationaler DBMS Ted Codd: A Relational Model of Data for Large Shared Data Banks, Comm. ACM, Juni 1970, S. 377 387 Grundlagen des relationalen Modells Seien D 1, D 2,..., D
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
MehrVorlesungen. Studenten. hören. Grundzüge. Fichte Glaube und Wissen Jonas
Das relationale eato aedatenmodell Studenten hören Vorlesungen Matrr ame Matrr Vorlr Vorlr Titel 26120 Fichte 25403 5022 5001 Grundzüge 25403... Jonas... 26120... 5001... 5022... Glaube und Wissen... Historische
MehrAcknowledgments. Datenmodellierung VU , WS Das Relationale Modell: Begriffsklärung. Übersicht. Das relationale Modell
Das relationale Modell Das relationale Modell Acknowledgments Datenmodellierung VU 184.685, WS 2015 Das relationale Modell Sebastian Skritek Die Folien sind eine kleine Erweiterung der Folien von Katrin
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
MehrGrundlagen des relationalen Modells Seien D 1 ;D 2 ;:::;D n Domänen (Wertebereiche) Relation: R D 1 :::D n Bsp.: Telefonbuch string string integer Tup
Grundlagen des relationalen Modells Seien D 1 ;D 2 ;:::;D n Domänen (Wertebereiche) Relation: R D 1 :::D n Bsp: Telefonbuch string string integer Tupel: t 2 R Bsp: t = (Mickey Mouse, Main Street, 4711)
MehrRelationale Anfragesprachen
Relationale Anfragesprachen Structured Query Language: SQL Query by Example: QBE Kapitel 1 Übungen Fr 8.0 Uhr Michael Kühn Raum E 11 SQL standardisierte - Datendefinitions (DDL)- - Datenmanipulations (DML)-
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
MehrInformatik II Vorlesung am D-BAUG der ETH Zürich. Vorlesung 12, Datenbanksysteme: Datendefinition in SQL, Kompliziertere Datenbankabfragen
Informatik II Vorlesung am D-BAUG der ETH Zürich Vorlesung 12, 30.5.2016 Datenbanksysteme: Datendefinition in SQL, Kompliziertere Datenbankabfragen Datendefinition (DDL) in SQL Datentypen character (n),
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
MehrInformatik II Vorlesung am D-BAUG der ETH Zürich. Vorlesung 12, 2017 Datenbanksysteme: Datendefinition in SQL, Kompliziertere Datenbankabfragen
Informatik II Vorlesung am D-BAUG der ETH Zürich Vorlesung 12, 2017 Datenbanksysteme: Datendefinition in SQL, Kompliziertere Datenbankabfragen Datendefinition (DDL) in SQL Anlegen einer Tabelle create
MehrTeil 1: Deduktive Datenbanken Gerd Stumme Christoph Schmitz
Teil 1: Deduktive Datenbanken Gerd Stumme Christoph Schmitz Wintersemester 004/05 Deduktive Datenbanken Grundkonzepte einer deduktiven Datenbank IDB intensionale Datenbasis (hergeleitete Relationen) Regeln
MehrAnfragebearbeitung 1. Vorlesung Datenbanksysteme vom
Vorlesung Datenbanksysteme vom 16.11.016 Anfragebearbeitung 1 Architektur eines DBMS Logische Optimierung Physische Optimierung Kostenmodelle + Tuning Architektur eines DBMS SW-Komponenten der Anfragebearbeitung
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
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
MehrSoftware-Engineering
FH Wedel Prof. Dr. Sebastian Iwanowski SWE42 Folie Software-Engineering Sebastian Iwanowski FH Wedel Kapitel 4: Systemanalyse Teil 2: Datenorientierte Sicht FH Wedel Prof. Dr. Sebastian Iwanowski SWE42
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
MehrDatenmodellierung. VU , SS 2015 Das relationale Modell. Sebastian Skritek. Institut für Informationssysteme Technische Universität Wien
Das relationale Modell Datenmodellierung VU 184.685, SS 2015 Das relationale Modell Sebastian Skritek Institut für Informationssysteme Technische Universität Wien Sebastian Skritek Seite 1 Das relationale
MehrTransaktionsverwaltung read write read write
Transaktionsverwaltung Beispiel einer typischen Transaktion in einer Bankanwendung: 1. Lese den Kontostand von A in die Variable a: read(a,a); 2. Reduziere den Kontostand um 50.- Euro: a:= a 50; 3. Schreibe
MehrWiederholung VU Datenmodellierung
Wiederholung VU Datenmodellierung VL Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester
MehrWiederholung VU Datenmodellierung
Wiederholung VU Datenmodellierung VU Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester
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. Kapitel 5 1
Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Integritätsbedingungen Bedingungen an den Zustand der Datenbasis dynamische
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):
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
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!
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
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
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
Mehr2. Relationale Datenbanken
2. Relationale Datenbanken Inhalt 2.1 Entity-Relationship-Modell 2.2 Relationales Modell 2.3 Relationale Entwurfstheorie 2.4 Relationale Algebra 2.5 Structured Query Language (SQL) 2 2.1 Entity-Relationship-Modell
MehrUni-Schema. Grundlagen des relationalen Modells N M. 1 Professoren. Bsp.: Telefonbuch string x string x integer
Grundlagen des relationalen odells Seien D, D,, D n Domänen (Wertebereiche, engen) Eine elation ist eine Teilmenge D x x D n Bsp.: Telefonbuch string x string x integer ickey ouse ini ouse Donald Duck
MehrDatenmodellierung VU Einführung SS 2015
184.685 Datenmodellierung VU, Einführung SS 2015 184.685 Datenmodellierung VU Einführung SS 2015 Dr. Sebastian Skritek Institut für Informationssysteme Technische Universität Wien Dr. Sebastian Skritek
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
MehrDatenmodellierung. Ausschnitt der Realen Miniwelt. Manuelle/intellektuelle Modellierung. Konzeptuelles Schema (E/R- oder UML-Schema)
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
Mehr3. Relationales Modell & Algebra
3. Relationales Modell & Algebra Inhalt 3.1 Relationales Modell Wie können wir Daten mathematisch formal darstellen? 3.2 Übersetzung eines konzeptuellen Modells Wie können wir ein konzeptuelles Modell
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
MehrDatenintegrität. Kapitel 5 1
Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Integritätsbedingungen Bedingungen an den Zustand der Datenbasis dynamische
MehrFortsetzung: Kreuzprodukt, Inner Join. Sortierung. Existenzquantor, Mengenvergleich Gruppierung, Aggregate Cast-Operator
Fortsetzung: Anfragen mit SQL Bisher: Projektion, Selektion, Duplikatbehandlung, NULL Werte Kreuzprodukt, Inner Join Mengenoperationen Sortierung Geschachtelte Anfragen Existenzquantor, Mengenvergleich
Mehr3. Relationales Modell & Algebra
3. Relationales Modell & Algebra Inhalt 3.1 Relationales Modell Wie können wir Daten mathematisch formal darstellen? 3.2 Übersetzung eines konzeptuellen Modells Wie können wir ein konzeptuelles Modell
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
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.)
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
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
MehrAbstraktionsebenen des Datenbankentwurfs
Datenbankentwurf Abstraktionsebenen des Datenbankentwurfs 1. Konzeptuelle Ebene 2. Implementationsebene 3. Physische Ebene 1 Objektbeschreibung Uni-Angestellte - Anzahl: 1000 - Attribute PersonalNummer
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
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
MehrRelationales Datenmodell Relationale Algebra
Web Science & Technologies University of Koblenz Landau, Germany Grundlagen der Datenbanken Relationale Algebra Dr. Gerd Gröner Wintersemester 2013/14 Lernziele Grundbegriffe des Relationalen Modells Abbildung
Mehr<is web> Information Systems & Semantic Web University of Koblenz Landau, Germany
Information Systems & University of Koblenz Landau, Germany Reifikation bzw. Mehrstellige Beziehungen Reifikation Wie drücke ich aus: Kant prüft Jonas in Grundzüge und gibt die Note? Mehrstellige Beziehung
MehrDatenbankanwendung. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2014/15.
Datenbankanwendung Wintersemester 2014/15 Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern smichel@cs.uni-kl.de SQL Ausblick auf kommende Vorlesungen Weiterführende SQL Konzepte Views JDBC: Java Database
MehrAbstraktionsebenen des Datenbankentwurfs
Datenbankentwurf Abstraktionsebenen des Datenbankentwurfs 1. Konzeptuelle Ebene 2. Implementationsebene 3. Physische Ebene 1 Allgemeiner top-down Entwurf Entwurfsschritt 1 Anforderungsanalyse..... Entwurfsschritt
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
MehrDatenintegrität. Referentielle Integrität. Referentielle Integrität in SQL. Bisherige Integritätsbedingungen
Datenintegrität eferentielle Integrität Integitätsbedingungen chlüssel Fremdschlüssel verweisen auf Tupel einer elation z.b. gelesenvon in Vorlesungen verweist auf Tupel in Professoren Beziehungskardinalitäten
MehrDas relationale Modell (Teil 1)
Vorlesung #2 Das relationale Modell (Teil 1) Fahrplan WS 2010/11 Feedback Vorlesung#1 Das relationale Modell Einordnung (wir überspringen die Modellierung, das kommt im 4. Semester Datenmanagement ) Definition,
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)
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)
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
MehrDatenbankentwurf. Abstraktionsebenen des Datenbankentwurfs: 3. Konzeptuelle Ebene. 5. Implementationsebene. 7. Physische Ebene.
Datenbankentwurf Abstraktionsebenen des Datenbankentwurfs: 3. Konzeptuelle Ebene 5. Implementationsebene 7. Physische Ebene Kapitel 2 1 Datenbankentwurf Abstraktionsebenen des Datenbankentwurfs 5. Konzeptuelle
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
MehrDatenmodelle und Datenbanken 1 Internet-Datenbanken
Datenmodelle und Datenbanken 1 Internet-Datenbanken Prof. N. Fuhr Institut für Informatik und Interaktive Systeme Arbeitsgruppe Informationssysteme 17. August 2004 Hinweise zur Bearbeitung Die Zeit läuft
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.
MehrKapitel 8: Datenintegrität
Kapitel 8: Datenintegrität Datenintegrität Statische Bedingung (jeder Zustand) Dynamische Bedingung (bei Zustandsänderung) Bisher: Definition eines Schlüssels 1:N - Beziehung Angabe einer Domäne Jetzt:
MehrDatenbankentwurf. Abstraktionsebenen des Datenbankentwurfs. 1. Konzeptuelle Ebene. 2. Implementationsebene (Logische Ebene) 3.
Datenbankentwurf Abstraktionsebenen des Datenbankentwurfs 1. Konzeptuelle Ebene 2. Implementationsebene (Logische Ebene) 3. Physische Ebene 1 Objektbeschreibung Uni-Angestellte - Anzahl: 1000 - Attribute
MehrDatenbanken. Seminararbeit. Einführung in das wissenschaftliche Arbeiten
Seminararbeit vorgelegt von: Gutachter: Studienbereich: Christian Lechner Dr. Georg Moser Informatik Datum: 6. Juni 2013 Inhaltsverzeichnis Inhaltsverzeichnis 1 Einführung in Datenbanken 1 1.1 Motivation....................................
MehrÜbung 4. Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017)
Übung 4 Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017) Dennis Fischer dennis.fischer@tum.de http://home.in.tum.de/~fischerd/ Technische Universität München Fakultät für Informatik
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.
Mehr