Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Technische Universität München Übung zur Einführung in die Informatik für Hörer anderer Fachrichtungen im Sommersemester 2010 Sitzung 7: Grundlagen des.

Ähnliche Präsentationen


Präsentation zum Thema: "Technische Universität München Übung zur Einführung in die Informatik für Hörer anderer Fachrichtungen im Sommersemester 2010 Sitzung 7: Grundlagen des."—  Präsentation transkript:

1 Technische Universität München Übung zur Einführung in die Informatik für Hörer anderer Fachrichtungen im Sommersemester 2010 Sitzung 7: Grundlagen des relationalen Modells Jan Herrmann Lehrstuhl für Angewandte Informatik / Kooperative Systeme Folien angelehnt an Prof. A. Kemper (http://www3.in.tum.de/teaching/ws0910/)

2 Technische Universität München 2 Überblick Sitzung 7 WDH ER Modellierung Teil 1 (vgl. Sitzung 6) ER Modellierung Teil 2 Grundlagen des relationalen Modells Abbilden eines ER Modells auf einem relationales Schema

3 Technische Universität München 3 Entity/Relationship-Modellierung Entity (Gegenstandstyp) Relationship (Beziehungstyp) –binäre, ternäre, rekursive Attribut (Eigenschaft) –einelementig Schlüssel (Identifikation) –eindeutiges Attribut oder –eindeutige Kombination von Attr. Rolle Student Vorlesung hören VorlNr Titel SWS MatrNr NameSemester Hörer Lehrveranstaltung

4 Technische Universität München 4 E 1 (z.B. Männer) E 2 (z.B. Frauen) R 11 R  E 1 x E 2 1:N N:MN:M E1E1 E 2 1:1 N:1 Funktionalitäten z.B. verheiratet

5 Technische Universität München 5 E 1 (z.B. BL) E 2 (z.B. Mensch) R 1N R  E 1 x E 2 1:N N:MN:M E1E1 E 2 1:1 N:1 Funktionalitäten z.B. MdL

6 Technische Universität München 6 E 1 (z.B. VL) E 2 (z.B. Professor) R N1 R  E 1 x E 2 1:N N:MN:M E1E1 E 2 1:1 N:1 Funktionalitäten z.B. lesen

7 Technische Universität München 7 E 1 (z.B. Stundet) E 2 (z.B. Professor) R NM R  E 1 x E 2 1:N N:MN:M E1E1 E 2 1:1 N:1 Funktionalitäten z.B. h ö ren

8 Technische Universität München 8 Funktionalitäten bei n -stelligen Beziehungen E1E1 EnEn E2E2 EkEk R P MN 1 R : E 1 x... x E k-1 x E k+1 x... x E n  E k

9 Technische Universität München 9 Beispiel-Beziehung: betreuen Studenten betreuen Note Seminarthemen Professoren 1 1 N dargestellt als partielle Funktionen: betreuen : Seminarthemen x Studenten  Professoren betreuen : Professoren x Studenten  Seminarthemen

10 Technische Universität München 10 Dadurch erzwungene Konsistenzbedingungen 1.Studenten dürfen bei demselben Professor bzw. derselben Professorin nur ein Seminarthema "ableisten" (damit ein breites Spektrum abgedeckt wird). (vgl. 1 bei Seminarthema) 1.Studenten dürfen dasselbe Seminarthema nur einmal bearbeiten – sie dürfen also nicht bei anderen Professoren ein schon einmal erteiltes Seminarthema nochmals bearbeiten. (vgl. 1 bei Professor) Es sind aber folgende Datenbankzustände nach wie vor möglich: –Professoren können dasselbe Seminarthema „wiederverwenden“ – also dasselbe Thema auch mehreren Studenten erteilen. –Ein Thema kann von mehreren Professoren vergeben werden – aber an unterschiedliche Studenten.

11 Technische Universität München 11 Ausprägung der Beziehung betreuen Prof Seminarthemen p1p1 p2p2 p3p3 p4p4 t1t1 t2t2 t3t3 t4t4 s1s1 s2s2 s3s3 s4s4 b1b1 b2b2 b3b3 b4b4 b5b5 b6b6 Studenten Gestrichelte Linien markieren illegale Ausprägungen

12 Technische Universität München 12 Studenten Assistenten MatrNr PersNr Semester Name Fachgebiet Note hören prüfen arbeitenFür Professoren Vorlesungen lesen voraussetzen SWS VorlNr Titel Raum Rang PersNr Nach- folger Vorgänger Name 1 N 1 1 N N N M M M N Funktionalitäten

13 Technische Universität München 13 (min, max)-Notation E2E2 R  E 1 x... x E i x... x E n E1E1 EnEn EiEi R (min 1 max 1 ) (min 2, max 2 ) (min i, max i ) (min n, max n ) Für jedes e i  E i gibt es Mindestens min i Tupel der Art (..., e i,...) und Höchstens max i viele Tupel der Art (..., e i,...)  R

14 Technische Universität München 14 Polyeder Hülle Flächen Begrenzung Kanten StartEnde Punkte PolyID FlächenID KantenID X Y Z 1 N N M N M Beispiel- Polyeder Begrenzungsflächendarstellung

15 Technische Universität München 15 Polyeder Hülle Flächen Begrenzung Kanten StartEnde Punkte PolyID FlächenID KantenID X Y Z 1 N N M N M (4,  ) (1,1) (3,  ) (2, 2) (3,  ) Beispiel- Polyeder Begrenzungsflächendarstellung Tetraeder (minimaler Polyeder)

16 Technische Universität München 16 Schwache, existenzabhängige Entities Beziehung zwischen "starken" und schwachem Typ ist immer 1:N (oder 1:1 in seltenen Fällen) Warum kann das keine N:M-Beziehung sein? RaumNr ist nur innerhalb eines Gebäudes eindeutig Schlüssel ist: GebNr und RaumNr Gebäude liegt_in Räume HöheGebNr Größe RaumNr 1 N

17 Technische Universität München 17 Prüfungen als schwacher Entitytyp Studenten Prüfungen 1 N Note PrüfTeil MatrNr Vorlesungen umfassen VorlNr abhalten Professoren PersNr NN MM in einer Prüfung werden mehrere Vorlesungen abgefragt eine Prüfung kann von mehreren Prüfern abgehalten werden ablegen

18 Technische Universität München 18 Generalisierung/Spezialisierung MatrNr Uni-Mitglieder is-a Studenten Assistenten is-a Professoren Fachgebiet Name Angestellte PersNr Raum Rang

19 Technische Universität München 19 Studenten MatrNr Semester Name hören Vorlesungen voraussetzen SWS VorlNr Titel Nach- folger Vorgänger Note prüfen lesen Name Fachgebiet Assistenten arbeitenFür Professoren Raum Rang is-a Angestellte PersNr (0,*)(3,*) (0,*) (1,1) (0,*) Universitätsschema mit Generalisierung und (min, max)-Markierung

20 Technische Universität München 20 Aggregation Fahrräder Teil-von RahmenRäder Teil-von RohreFelgenSpeichen...

21 Technische Universität München 21... Rohre... Fahrräder Teil-von RahmenRäder Teil-von FelgenSpeichen Segler Motorräder Automobile is-a Unmot.-Fahrzeuge mot.-Fahrzeuge is-a Fahrzeuge Aggregation und Generalisierung

22 Technische Universität München 22 Konsolidierung von Teilschemata oder Sichtenintegration Sicht 3 Sicht 4 Sicht 2 Sicht 1 Globales Schema Redundanzfrei Widerspruchsfrei Synonyme bereinigt Homonyme bereinigt Konsoli- dierung

23 Technische Universität München 23 Möglicher Konsolidierungsbaum  Mögliche Konsolidierungs- bäume zur Herleitung des globalen Schemas S 1,2,3,4 aus 4 Teilschemata S 1, S 2, S 3, und S 4  Oben ein maximal hoher Konsolidierungsbaum  Unten ein minimal hoher Konsolidierungsbaum S1S1 S 1,2,3,4 S 1,2,3, S4S4 S 1,2 S3S3 S2S2 S 1,2,3,4 S 1,2 S 3,4 S1S1 S2S2 S3S3 S4S4

24 Technische Universität München 24 Drei Sichten einer Universitäts-Datenbank Studenten Assistenten Professoren erstellen verfassen bewerten betreuen Diplomarbeiten Dissertationen Titel Sicht 1: Erstellung von Dokumenten als Prüfungsleistung

25 Technische Universität München 25 Signatur Bibliotheken UniMitglieder besitzen Dokumente Autoren Titel Jahr entleihen leiten Datum Fakultät Sicht 2: Bibliotheksverwaltung

26 Technische Universität München 26 Vorlesungen Dozenten Bücher Titel Auflage Verlag empfehlen Autoren Sicht 3: Buchempfehlungen für Vorlesungen Jahr

27 Technische Universität München 27 Beobachtungen Die Begriffe Dozenten und Professoren sind synonym verwendet worden. Der Entitytyp UniMitglieder ist eine Generalisierung von Studenten, Professoren und Assistenten. Fakultätsbibliotheken werden sicherlich von Angestellten (und nicht von Studenten) geleitet. Insofern ist die in Sicht 2 festgelegte Beziehung leiten revisionsbedürftig, sobald wir im globalen Schema ohnehin eine Spezialisierung von UniMitglieder in Studenten und Angestellte vornehmen. Dissertationen, Diplomarbeiten und Bücher sind Spezialisierungen von Dokumenten, die in den Bibliotheken verwaltet werden.

28 Technische Universität München 28 Wir können davon ausgehen, dass alle an der Universität erstellten Diplomarbeiten und Dissertationen in Bibliotheken verwaltet werden. Die in Sicht 1 festgelegten Beziehungen erstellen und verfassen modellieren denselben Sachverhalt wie das Attribut Autoren von Büchern in Sicht 3 oder 2. Alle in einer Bibliothek verwalteten Dokumente werden durch die Signatur identifiziert.

29 Technische Universität München 29 betreuen bewertenempfehlen DiplomarbeitenDissertationenBücher AssistentenProfessoren AngestellteStudenten UniMitglieder Personen Vorlesungen leiten entleihen Dokumente besitzen Bibliotheken Autoren Fakultät Signatur Titel Jahr Verlag Datum

30 Technische Universität München 30 Hardware/BS- Charakteristika DBMS- Charakteristika Anforderungsspezifikation Phasen des Datenbankentwurfs Informationsstruktur ER Schema Anforderungsanalyse Implementationsentwurf Physischer Entwurf physische Datenbankstruktur Konzeptueller Entwurf logische DB-Struktur

31 Technische Universität München 31 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“, 8124711) Schema: legt die Struktur der gespeicherten Daten fest Bsp.: Telefonbuch: {[Name: string, Adresse: string, Telefon#:integer]} Grundlagen des relationalen Modells

32 Technische Universität München 32 Telefonbuch Name:StringStraße:StringTelefon#:integer Mickey MouseMain Street4711 Donald DuckBroadway95672... Ausprägung: der aktuelle Zustand der Datenbasis Schlüssel: minimale Menge von Attributen, deren Werte ein Tupel eindeutig identifizieren Primärschlüssel: wird unterstrichen –Einer der Schlüsselkandidaten wird als Primärschlüssel ausgewählt –Hat eine besondere Bedeutung bei der Referenzierung von Tupeln

33 Technische Universität München 33 Studenten Assistenten MatrNr PersNr Semester Name Fachgebiet Note hören prüfen arbeitenFür Professoren Vorlesungen lesen voraussetzen SWS VorlNr Titel Raum Rang PersNr Nach- folger Vorgänger Name Uni-Schema 1 N 1 1 N N N M M MN

34 Technische Universität München 34 Relationale Darstellung von Entitytypen Studenten:{[MatrNr:integer, Name: string, Semester: integer]} Vorlesungen: {[VorlNr:integer, Titel: string, SWS: integer]} Professoren: {[PersNr:integer, Name: string, Rang: string, Raum: integer]} Assistenten: {[PersNr:integer, Name: string, Fachgebiet: string]}

35 Technische Universität München 35 Relationale Darstellung von Beziehungen A 11 E1E1 R... AR1AR1 EnEn E2E2 An1An1 A 21... R:{[]}

36 Technische Universität München 36 Beziehungen unseres Beispiel-Schemas hören : {[MatrNr: integer, VorlNr: integer]} Studenten MatrNr Semester Name hören Vorlesungen SWS VorlNr Titel MN hören MatrNrVorlNr 261205001 275505001 275504052 281065041 281065052 …… die Fremdschlüssel der Primärschlüssel

37 Technische Universität München 37 Studenten MatrNr... 26120... 27550... hören MatrNrVorlNr 261205001 275505001 275504052 281065041 281065052 281065216 281065259 291205001 291205041 291205049 295555022 254035022 295555001 Vorlesungen VorlNr... 5001... 4052... Studenten hören Vorlesungen M N MatrNr VorlNr

38 Technische Universität München 38 Beziehungen unseres Beispiel-Schemas lesen : {[PersNr: integer, VorlNr: integer]} Professoren Vorlesungen lesen 1 N

39 Technische Universität München 39 Verfeinerung des relationalen Schemas 1:N-Beziehung sind verfeinerbar (gilt daher auch für 1:1) Initial-Entwurf –Vorlesungen : {[VorlNr, Titel, SWS]} –Professoren : {[PersNr, Name, Rang, Raum]} –lesen: {[VorlNr, PersNr]} Professoren Vorlesungen lesen 1 N

40 Technische Universität München 40 Verfeinerung des relationalen Schemas 1:N-Beziehung (gilt somit auch für 1:1) Initial-Entwurf Vorlesungen : {[VorlNr, Titel, SWS]} Professoren : {[PersNr, Name, Rang, Raum]} lesen: {[VorlNr, PersNr]} Verfeinerung durch Zusammenfassung Vorlesungen : {[VorlNr, Titel, SWS, gelesenVonProfMitPersNr]} Professoren : {[PersNr, Name, Rang, Raum]} Regel Relationen mit gleichem Schlüssel kann man zusammenfassen aber nur diese und keine anderen!

41 Technische Universität München 41 Ausprägung von Professoren und Vorlesung Professoren PersNrNameRangRaum 2125SokratesC4226 2126RusselC4232 2127KopernikusC3310 2133PopperC352 2134AugustinusC3309 2136CurieC436 2137KantC47 Vorlesungen VorlNrTitelSWSGelesen Von 5001Grundzüge42137 5041Ethik42125 5043Erkenntnistheorie32126 5049Mäeutik22125 4052Logik42125 5052Wissenschaftstheorie32126 ………… Professoren Vorlesungen lesen 1 N

42 Technische Universität München 42 Vorsicht: So geht es NICHT !!  Anomalien Update-Anomalie: Was passiert wenn Sokrates umzieht Lösch-Anomalie: Was passiert wenn „Glaube und Wissen“ wegfällt Einfügeanomalie: Curie forscht nur und liest keine Vorlesung Professoren PersNrNameRangRaumliest 2125SokratesC42265041 2125SokratesC42265049 2125SokratesC42264052 2134AugustinusC33095022 2136CurieC436?? …………… Vorlesungen VorlNrTitelSWS 5041Ethik4 5043Erkenntnistheorie3 5049Mäeutik2 4052Logik4 5052Wissenschaftstheorie3 5022Glaube und Wissen2 ………

43 Technische Universität München 43 Vermeidung von Null-Werten

44 Technische Universität München 44 Schlechte Modellierung Seehofer Maget Platzeck Wulff

45 Technische Universität München 45 Bessere Modellierung der Wohnsitz kann als Fremdschlüssel in der Enity-Relation Mensch bleiben die Beziehung MP modelliert man am besten als Fremdschlüssel in Bundesländer, da alle BL einen MP haben die Beziehung MdL repräsentiert man als eigenständige Relation mit den Fremdschlüsseln Nr auf Mensch und Bundesland auf Bundesländer Seehofer Maget Platzeck Wulff

46 Technische Universität München 46 Relationale Modellierung der Generalisierung Fachgebiet Assistenten Professoren RaumRang is_a Angestellte PersNrName Angestellte: {[PersNr, Name]} Professoren: {[PersNr, Rang, Raum]} Assistenten: {[PersNr, Fachgebiet]}

47 Technische Universität München 47 Relationale Modellierung schwacher Entitytypen Studenten ablegen Prüfungen 1 N Note PrüfTeil MatrNr Vorlesungen umfassen VorlNr abhalten Professoren PersNr NN MM Prüfungen: {[MatrNr: integer, PrüfTeil: string, Note: integer]} umfassen: {[MatrNr: integer, PrüfTeil: string, VorlNr: integer]} abhalten: {[MatrNr: integer, PrüfTeil: string, PersNr: integer]}

48 Technische Universität München 48 Man beachte, dass in diesem Fall der (global eindeutige) Schlüssel der Relation Prüfung nämlich MatrNr und PrüfTeil als Fremdschlüssel in die Relationen umfassen und abhalten übernommen werden muss. Fremdschlüssel auf ein schwaches Entity

49 Technische Universität München 49 Die relationale Uni-DB Professoren PersNrNameRangRaum 2125SokratesC4226 2126RusselC4232 2127KopernikusC3310 2133PopperC352 2134AugustinusC3309 2136CurieC436 2137KantC47 Studenten MatrNrNameSemester 24002Xenokrates18 25403Jonas12 26120Fichte10 26830Aristoxenos8 27550Schopenhauer6 28106Carnap3 29120Theophrastos2 29555Feuerbach2 Vorlesungen VorlNrTitelSWSgelesen von 5001Grundzüge42137 5041Ethik42125 5043Erkenntnistheorie32126 5049Mäeutik22125 4052Logik42125 5052Wissenschaftstheorie32126 5216Bioethik22126 5259Der Wiener Kreis22133 5022Glaube und Wissen22134 4630Die 3 Kritiken42137 voraussetzen VorgängerNachfolger 50015041 50015043 50015049 50415216 50435052 50415052 5259 hören MatrNrVorlNr 261205001 275505001 275504052 281065041 281065052 281065216 281065259 291205001 291205041 291205049 295555022 254035022 Assistenten PerslNrNameFachgebietBoss 3002PlatonIdeenlehre2125 3003AristotelesSyllogistik2125 3004WittgensteinSprachtheorie2126 3005RhetikusPlanetenbewegung2127 3006NewtonKeplersche Gesetze2127 3007SpinozaGott und Natur2126 prüfen MatrNrVorlNrPersNrNote 28106500121261 25403504121252 27550463021372


Herunterladen ppt "Technische Universität München Übung zur Einführung in die Informatik für Hörer anderer Fachrichtungen im Sommersemester 2010 Sitzung 7: Grundlagen des."

Ähnliche Präsentationen


Google-Anzeigen