Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
1
Datenmodellierung
2
Datenmodellierung Tätigkeit zur Strukturierung der Datenbestände
Ziel: Redundanzarme systematische Beschreibung der zur jeweiligen computerunterstützten Arbeit mit einem DBMS benötigten Gegenstände, Begriffe und deren Zusammenhänge. Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
3
Datenmodellierung im Relationalen Modell
Bestimmung der relevanten Objekte Bestimmung der relevanten Eigenschaften der Objekte Bestimmung der Beziehungen zwischen den Objekten Abbildung auf Tabellen Normalisierung der Tabellen Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
4
Datenmodellierung im Relationalen Modell
Objekte (Entities) können sein: Dinge Personen Gegenstände Vorgänge / Ereignisse Dokumente alles was Eigenschaften hat!!! Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
5
Datenmodellierung im Relationalen Modell
Entity-Types (Entitätentypen) sind abstrakte (Klassen) Zusammenfassungen von Entitäten des gleichen Typs durch Spezifikation der Eigenschaftsstruktur der zusammengefassten Entities Beispiel: Mitarbeiter durch Eigenschaften spezifiziert Intension (Intensionale Beschreibung) Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
6
Datenmodellierung im Relationalen Modell
Entitätsmengen sind konkrete Mengen von Entities Beispiel: die Menge der in einem Unternehmen angestellten Personen, die sich zu jedem Zeitpunkt ändern kann Eine Abfrage bezieht sich auf eine Entitätenmenge Extension (Extensionale Beschreibung) Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
7
Datenmodellierung im Relationalen Modell
Beispiel Mitarbeiter Spalte / Attribut M# Name Wohnort M1 Becker Basel M2 Meier Lörrach Datensatz Datenelement / Datenwert Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
8
Datenmodellierung im Relationalen Modell
Beziehung Tabelle / Relationen R= {(M1, Becker, Basel), (M2, Meier, Lörrach)} M# Name Ort M1 Becker Basel M2 Meier Lörrach Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
9
Datenmodellierung im Relationalen Modell
Tabellendefinition Eindeutiger Tabellenname Eindeutiger Merkmalsname pro Tabelle Reihenfolge der Merkmale ist egal Anzahl der Merkmale ist beliebig (endlich) Anzahl der Datensätze ist beliebig (endlich) Die Reihenfolge der Datensätze ist beliebig Mit jedem Merkmal wird ein Datentyp verknüpft Schlüsselfeld dient der eindeutigen Identifikation eines Datensatzes Es gibt keine 2 Datensätze mit identischen Schlüsselwerten Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
10
Datenmodellierung im Relationalen Modell
Atomare Attributwerte: Für das Relationale Modell gilt folgende wesentliche Einschränkung: Der Wert eines Attributs darf nur aus einem „atomaren“ Attributwert bestehen. Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
11
Datenmodellierung im Relationalen Modell
Beispiel: Die Relation Hobby(Name, Hobbies) enthalte die folgenden Tupel: (Huber, {Drachenfliegen,Segeln, Bergsteigen}) (Meier, Musik) (Mueller, {Musik, Literatur, Theater}) Nicht-atomare Attributwerte sind {Drachenfliegen, Segeln, Bergsteigen} und {Musik, Literatur, Theater}. Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
12
Datenmodellierung im Relationalen Modell
Definition: erste Normalform Eine Relation ist in erster Normalform (1NF), wenn alle ihre Attribute nur atomare Attributwerte besitzen. Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
13
Datenmodellierung im Relationalen Modell
Beispiel: Normalisierung in 1NF Die Relation Hobby kann auf einfache Weise in eine Relation „Hob“ in erster Normalform überführt werden: Relationenschema Hob(Name: varchar(20), Hobby: varchar(30)) und folgenden Tupeln (Huber, Drachenfliegen) (Huber, Segeln) (Huber, Bergsteigen) (Meier, Musik) (Mueller, Musik) (Mueller, Literatur) (Mueller, Theater) Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
14
Das Entity-Relationship-Modell
ERM bzw. E/R-Modell
15
ERM - Relationales Datenbankschema
Das ERM ist optimal für die Modellierung des konzeptionellen Schemas für relationale DB-Systeme. Modellierungen im ERM können „automatisch“ in ein relationales Modell transformiert werden. Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
16
ERM - Relationales Datenbankschema
Es gibt leider keine eindeutige Normierung der graphischen Darstellung des ERM und deshalb sehr viele unterschiedliche graphische Notationen. Es gibt diverse Erweiterungen des ERM: EERM (Extended Entity Relationship Model) Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
17
Grundkonzepte des klassischen ERM
Entity: Gegenstände; z.B.: „Paul Müller“. Entity-Typ: Klasse von Gegenständen mit gleichen Attributen. z.B.: „Mitarbeiter“, „Kunden“, „Produkte“, „Personen“ Die Attribute „beschreiben“ die Klasse; Graphische Notation Rechteck: Entity-Typ- Name Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
18
Beispiele: Entity-Typen
Reisen Kunden Bestellungen Flüge Mitarbeiter Prozesse Vorlesungen Produkte Flugzeuge Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
19
Grundkonzepte des klassischen ERM
Attribute: sind Eigenschaften, Merkmale von Entities (z.B.: Gewicht, Preis, Farbe, Lieferdatum) Nicht zu verwechseln mit den Eingenschaftsausprägungen (z.B.: 50 kg, 200 Euro, grün, ) Graphische Notation abgerundetes Rechteck: Attributname Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
20
Beispiel: Angestellter
Name Angestellter Angest_Nr mit den Attributen: Name Angest_Nr (für Angestellten-Nummer) Gehalt Gehalt Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
21
Grundkonzepte des klassischen ERM
Relationship: Beziehung zwischen Entities; z.B.: „verheiratet mit“: „Paul Müller“ und „Maria Müller“ . Relationship-Types (Beziehungstypen) zwischen Entity-Typen z.B. zwischen „Kunden“ und „Produkten“ Graphische Notation Raute: Relationship- Type- Name Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
22
Beziehungen zwischen Entity-Typen
Attribut R-Typ Entity-Typ 1 Entity-Typ 2 Entity-Typ3 Die Darstellung repräsentiert eine dreistellige Beziehung. Möglich sind beliebig viele Stellen. Am häufigsten sind zweistellige (binäre) Beziehungen. Beziehungen können zusätzlich auch Attribute zugeordnet werden Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
23
Beziehungen zwischen Entity-Typen
Beispiel: Professor empfiehlt Buch für Vorlesung Professor Buch Vorlesung empfiehlt Semester Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
24
Grundkonzepte des klassischen ERM
Domäne: Zulässiger Wertebereich eines Attributes Graphische Notation: Attributname:Domainname Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
25
Beispiel: Angestellter
Name:string A#: int Gehalt:int Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
26
Grundkonzepte des klassischen ERM
Domäne Standard-Datentypen in MS-Access Zahl Text Datum / Uhrzeit Währung AutoWert Ja/Nein Memo Hyperlink OLE-Objekt Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
27
Grundkonzepte des klassischen ERM
Domäne In SQL können neue Domänen definiert werden Mit Integritätsregeln können in SQL die Wertebereiche von Attributen zusätzlich eingeschränkt werden Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
28
Entititypen mit Attributen
Textuelle Notation (allgemein): E(A1:D1, ... , An:Dn) (mit Domänen) E: Entitytyp. Ai: Attribute i = n. Di: Domänen i = n. Kurzform: E(A1, ... , An) (ohne Domänen) Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
29
Beispiel: Angestellter
Textuelle Notation: Entity-Typ ANGESTELLTER Angestellter(A# : integer, Name : string, Gehalt : integer) Entities vom Typ ANGESTELLTER: Angestellter(523, 'Bill‘, ) Angestellter(122, 'John', ) Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
30
Beispiel: Mitarbeiter
Personalnr Raum Mitarbeiter Geb-Datum Vorname Einstellungs- termin Name Telefon Textuelle Notation: Mitarbeiter(Personalnr,Vorname, Name, ,Telefon,Raum, Geb-Datum, Einstellungstermin) Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
31
Beispiel: Mitarbeiter mit Wertebereichen
Personalnr: int Raum: string Mitarbeiter Geb-Datum: date Vorname: string Einstellungs- termin:date Name:string string Telefon:string Textuelle Notation: Mitarbeiter(Personalnr: int, Vorname:string, Name:string, string, Telefon:string, Raum:string, Geb-Datum:date, Einstellungstermin:date) Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
32
Beispiel: Buchempfehlung
Titel liest Professor Vorlesung Name empfiehlt Semester Priorität Fach Telefon Autor Buch Titel ISBN Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
33
Beispiel: Bibliothek Titel ISBN InvNr Leser Buch Verlag Name Adresse
ADatum Titel ISBN Ausleihe InvNr Leser Buch Verlag Name Geschrieben von RDatum Adresse Lnr Name Autor Autornr Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
34
Relationships - Funktionale Beziehungen
Formulieren Constraints (Integritätsregeln) für faktische Einträge in der Datenbank. und geben Hinweise zur Abbildung der Relationship-Types auf Tabellen Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
35
Relationships - Funktionale Beziehungen
R E1 x ... x En wobei Ei (i= 1,...,n) Entity-Typen sind Definitionen für n=2 (R E1 x E2) 1:1 Relationship: ((x,y) R (x,z) R) y = z ((x,y) R (z,y) R) x = z N:1 Relationship: 1:N Relationship: N:M Relationship: keine Einschränkung Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
36
Funktionale Beziehungen / Beispiele
Abteilungsleiter leitet Abteilung 1:1-Relationship Angestellter arbeitet in Abteilung N:1-Relationship Person besitzt Haus 1:N-Relationship Student hört Vorlesung N:M-Relationship Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
37
Funktionale Beziehungen / Beispiele
Abteilungsleiter Abteilung leitet 1 1 Angestellter Abteilung arbeitet-in N 1 Person Haus besitzt 1 N Student Vorlesung hört N M Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
38
Relationships - Funktionale Beziehungen
Abteilungsleiter leitet Abteilung . . 1:1 Angestellter arbeitet in Abteilung . . N:1 Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
39
Relationships - Funktionale Beziehungen
Person besitzt Haus . . 1:N hört Student Vorlesung . . N:M Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
40
Relationships - Beispiel
wohnt in N 1 Person Stadt N 1 geb. in Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
41
Optional undefinierte Attribute
Entity-Typ A Attribut A kann undefiniert sein also „Null-Wert“ haben. Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
42
Graphische Bausteine des ERM
Entity-Typ E E A Attribut A A Schlüssel-Attribut A Verbindung zwischen Entity-Typ E und Attribut A A kann undefiniert sein E A R E1 E2 Binäre Relationship zwischen den Entity-Typen E1 und E2 Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
43
E/R-Modell ISA-Relationship
44
ISA-Relationship Definition Seien E1,E2 zwei Entity-Typen.
Die Relationship E1 isa E2 besteht genau dann, wenn E1 eine Spezialisierung von E2 ist. E1 heißt Subtyp des Supertyps E2. Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
45
Spezialisierungs- / Generalisierungsbeziehung
Synonyme Spezialisierung- / Generalisierung Unter- / Oberbegriff IST-Beziehung is-a-Relationship isa-Relationship Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
46
ISA-Relationship Besteht die Relationship
E1 isa E2, so erbt E1 die Attribute von E2. Dies hat folgende Konsequenzen: Für E1 ist lediglich die Angabe zusätzlicher Attribute notwendig. Die Schlüsselattribute von E2 sind auch die Schlüsselattribute von E1. Auf der Instanzenebene gilt: ein Entity von E1 erbt die zugehörigen Werte aus E2. Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
47
ISA-Relationship: Beispiel
ABTEILUNGSLEITER isa ANGESTELLTER ABTEILUNGSLEITER(Dienstwagen:string) ANGESTELLTER(Personalnr:int, Name:string) In diesem Fall erbt ABTEILUNGSLEITER alle Attribute von ANGESTELLTER (also „Personalnr“ und „Name“) und hat das zusätzliche Attribut „Dienstwagen“. Es besteht auch die Möglichkeit der Mehrfachvererbung, Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
48
ISA-Relationship: Beispiel
Beispiel Mehrfachvererbung: STUDENT isa PERSON ANGESTELLTER isa PERSON HIWI isa Student HIWI isa ANGESTELLTER STUDENT(Fachrichtung:string) Angestellter(Fachrichtung:String) Bei Mehrfachvererbung gleichbezeichneter Attribute sind Massnahmen zur Konfliktlösung erforderlich Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
49
ISA-Relationship total partiell t p Isa-Beziehung: p: partiell
t: total nicht disjunkt disjunkt Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
50
ISA-Relationship Angestellter Partielle nicht-disjunkte isa-Beziehung
Pilot Techniker Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
51
ISA-Relationship Person Totale disjunkte isa-Beziehung
(Spezialisierung) t Mann Frau Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
52
ISA-Relationship Fahrzeug Partielle disjunkte isa-Beziehung
(Spezialisierung) p Auto Fahrrad Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
53
ISA-Relationship Person Partielle nicht disjunkte isa-Beziehung
(Spezialisierung) p Mann Angestellter Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
54
ISA-Relationship Sportler Partielle nicht disjunkte isa-Beziehung
(Spezialisierung) p Fussballer Tennisspieler Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
55
ISA-Relationship Person partiell disjunkt p Manager Angestellter
Sekretärin p partiell nicht disjunkt Techniker Verkäufer Programmierer Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
56
Disjunkte Klassifikation
Beispiel: Mitarbeiter Jeder Mitarbeiter ist entweder (oder) Führungskraft Fachspezialist Lehrling Mitarbeiter t Führungskraft Fachspezialist Lehrling Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
57
E/R-Modell Schlüsselattribute
58
ERM - Schlüsselattribute
Jede Teilmenge der Attributmenge eines Entity-Typs, mit der die Entities dieses Typs eindeutig identifizierbar sind, heisst Schlüssel dieses Entity-Typs. Jede minimale Menge von Schlüssel-attributen heisst Schlüsselkandidat. Der Primärschlüssel ist der beim Entwurf der DB zur eindeutigen Identifikation der Entities ausgewählte Schlüsselkandidat. Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
59
ERM - Schlüsselattribute
Schlüsselkandidaten minimaler Schlüssel Primärschlüssel ausgewählter Schlüssel zur Identifikation der Entities in einer Tabelle Fremdschlüssel Attributmenge die in einer anderen Relation Schlüssel ist zusammengesetzter Schlüssel Schlüssel, der aus mehreren Attributen besteht Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
60
ERM - Schlüsselattribute
Die Schlüsseleigenschaft kann nicht an der Definition eines Entity-Typs erkannt werden. Die Attribute eines Entity-Typs müssen so gewählt sein, dass dadurch die Entities eindeutig identifizierbar sind. Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
61
Schlüsselattribute - Notation
Schlüsselattribute werden durch Unterstreichung gekennzeichnet: in der textlichen Notation: Mitarbeiter(Personalnr, Name, Vorname, Gebdatum) Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
62
In der graphischen Notation
Mitarbnr Titel Vorlesnr liest Professor Vorlesung Name empfiehlt Semester Priorität Fach Telefon Autor Buch Titel ISBN Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
63
Beispiel: Mitarbeitereigenschaften mit Schlüssel
Personalnr: int Raum: string Mitarbeiter Geb-Datum: date Vorname: string Einstellungs- termin:date Name:string string Telefon:string Textuelle Notation: Mitarbeiter(Personalnr: int, Vorname:string, Name:string, string, Telefon:string, Raum:string, Geb-Datum:date, Einstellungstermin:date) Prof. Dr. Fabian Glasen, Datenbanken, Februar 2002
Ähnliche Präsentationen
© 2025 SlidePlayer.org Inc.
All rights reserved.