Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Datenbankentwurf Gerhard Röhner September 2003. Modellierung.

Ähnliche Präsentationen


Präsentation zum Thema: "Datenbankentwurf Gerhard Röhner September 2003. Modellierung."—  Präsentation transkript:

1 Datenbankentwurf Gerhard Röhner September 2003

2 Modellierung

3 Von der Realität zum Datenmodell Logische Gesamtsicht, konzeptuelles Modell Abbildung eines Ausschnitts der realen Welt auf einen Miniwelt Abstraktion von nicht relevanten Details Konzentration auf Daten, die für die Arbeit mit der Datenbank bedeutsam sind Transformation semantischer Information in syntaktische Strukturen

4 Datenmodell System von Konzepten zur abstrakten Darstellung eines Ausschnitts der realen Welt mittels Daten besteht aus – Strukturen - statische Eigenschaften – Operatoren - dynamische Eigenschaften – Integritätsbedingungen - Geschäftsregeln

5 Strukturen, Operatoren Werte ohne Struktur sind sinnlos – – – – Operatoren erlauben Zugriff, Speicherung, Änderung von Werten – Insert

6 Integritätsbedingungen - Geschäftsregeln Garantieren die syntaktische und semantische Korrektheit einer Operation und dadurch die Konsistenz eines Datenbankzustands Beispiel – Tmax >Tmin macht obiges insert ungültig – Tag identifiziert Datensatz der Tabelle

7 Entity-Relationship-Modell graphisches Datenmodell, kurz ER-Modell, ERM 1976 von P. Chen vorgeschlagen Klassifizierung - Festlegung der Typen von Entitäten Abstraktion - Reduktion der Vielfalt der bekannten Informationen über die Entitätstypen auf einen Satz relevanter Eigenschaften Identifizierung - Festlegung zur Unterscheidung der Entitäten Beziehungsanalyse - Beschreibung der sachlogischen Zusammenhänge zwischen den Entitätstypen

8

9 Klassifizierung - Entitätstypen

10 Definition Entität und Entitätstypen Eine Entität (engl. entity) ist ein Exemplar von Personen, Gegenständen oder nicht materiellen Dingen über das Informationen gespeichert werden. Ein Entitätstyp (engl. entity type) ist eine durch einen Entitätstyp-Namen eindeutig benannte Klasse von Entitäten, über die dieselben Informationen gespeichert werden und in prinzipiell gleicher Weise verarbeitet werden.

11 Darstellung der Entitätstypen Entitätstypen werden durch Rechtecke dargestellt der Name des Entitätstyps steht im Singular im Rechteck Entitätstypen entsprechen den Karteikästen der traditionellen Informationsspeicherung Die Bildung der Entitätstypen hängt entscheidend von den Anforderungen ab – Firma aus der Sicht des Kunden – Firma aus der Sicht des Chefs Angestellter

12 Abstraktion - Festlegung relevanten Eigenschaften Definition Attribut – Ein Attribut (engl. attribute) ist die Benennung für ein relevantes Merkmal aller Entitäten, die in einem Entitätstyp zusammengefasst werden Definition Attributwert – Ein Attributwert (engl. attribute value) ist eine spezielle Ausprägung, die ein Attribut für eine konkrete Entität annimmt Attribut ist Feld einer Karteikarte in der traditionellen Informationsspeicherung

13 Darstellung der Attribute Attribute werden durch Ovale dargestellt der Name des Attributs steht im Singular im Oval die Ovale werden durch Strecken mit den zugehörigen Rechtecken der Entitätstypen verbunden Vorname Angestellter Name

14 1. Normalform Attribute müssen soweit zerlegt werden, dass man in der Datenbank-Anwendung nicht auf Teile eines Attributs zugreifen muss – z. B. Strasse + Hausnummer Bei zu weitgehender Zerlegung können Normalformverletzungen auftreten – Z. B. Postleitzahl, Straße, Hausnummer

15 Entitätstyp oder Attribut? Modellierung als Entitätstyp, wenn relevante individuelle Attribute vorliegen. In der Fuhrpark-Datenbank soll zusätzlich der Mindestpreis gespeichert werden, zu dem das Auto in der Grundausstattung gekauft werden soll. Aus Attribut Marke wird Entitätstyp

16 Festlegung der Identifizierung Identifizierung durch ein einziges Attribut – z. B. Kfz-Kennzeichen, Personalausweisnummer Identifizierung durch eine Kombination von Attributen – z. B. Name+Vorname+Geburtsdatum oder Ort+Kreis (Neustadt/Schwarzbach) Einführung eines organisatorischen Attributs – z.B. Schülernummer in der LUSD, Lehrerkürzel

17 Schlüssel – Attribut oder Kombination von Attributen die eine Entität identifizieren Primärschlüssel – unter allen möglichen Schlüsseln für das Datenmodell ausgewählter Schlüssel Darstellung durch Unterstreichen der identifizierenden Attribute

18 Beziehungsanalyse Definition Beziehung – Eine Beziehung (engl. relationship) kennzeichnet den konkreten Zusammenhang zwischen zwei realen Entitäten Definition Beziehungstyp – Ein Beziehungstyp (engl. relationship type) beschreibt den typmäßigen sachlogischen Zusammenhang, der zwischen den Entitäten zweier Entitätstypen besteht

19 Beziehungstyprichtung Der Zusammenhang zwischen zwei Entitätstypen besteht immer in beiden Richtungen – Lehrer unterrichten an Schulen – an Schulen sind Lehrer beschäftigt Jede der beiden Richtungen wird durch drei Angaben näher bestimmt – Die Benennung gemäß der Semantik des Zusammenhangs – Angabe der Kardinalität – Angabe der Optionalität

20 Benennung Die Benennung einer Beziehungstyp-Richtung zwischen zwei Entitätstypen A und B ist so zu wählen, dass dies ein fehlerfreien Satz wird: – Ein(e) ein(e/en/em/er) Ein Lehrer hat sich beworben an einer Schule Eine Schule hat einen Hausmeister Ein Ort hat eine Schule Eine Schule liegt in einem Ort

21 Darstellung der Beziehung Eine Beziehung wird durch eine Raute dargestellt Sie enthält oben die Benennung der Richtung A zu B, unten die Benennung der Richtung B zu A Die Raute wird links/oben mit dem Entitätstyp A, rechts/unten mit dem Entitätstyp B verbunden

22 Kardinalität - kann mehrere Kann eine Entität des Typs A mit mehreren Entitäten des Typs B in Beziehung stehen? – Ja -> Kardinalität ist n – Nein -> Kardinaliät ist 1 Kann ein Mann mit mehreren Frauen verheiratet sein? Nein, Kardinalität ist 1. Kann ein Ort mehrere Schulen haben? Ja, Kardinaliät ist n. Kann eine Schule in mehreren Orten liegen? Nein, Kardinaliät ist 1.

23 Darstellung der Kardinalität Ein Ort hat mehrere Schulen Eine Schule liegt in einem Ort Die Kardinalität wird an das Ende der Beziehung geschrieben

24 Optionalität - muss mindestens Muss eine Entität des Typs A mit mindestens einer Entität des Typs B in Beziehung stehen? – Ja -> nicht optional, obligatorisch, Muss-Beziehung – Nein -> optional, fakultativ, Kann-Beziehung Muss ein Mann mit mindestens einer Frau verheiratet sein? Nein, optional, Kann-Beziehung Muss ein Ort mindestens eine Schule haben? Nein, optional, Kann-Beziehung Muss eine Schule in mindestens einem Ort liegen? Ja, obligatorisch, Muss-Beziehung

25 Darstellung der Optionalität Ein Ort kann eine Schule haben Eine Schule muss in einem Ort liegen Die Optionalität wird an den Anfang der Beziehung geschrieben

26 Beziehungstypen-Übersicht

27 Attribute von Beziehungen

28 Grad einer Beziehung Duale Beziehungen - Grad = 2 Mehrstellige Beziehungen - Grad = n

29 Is-a-Beziehung - Vererbung

30 Rekursive Beziehungstypen Welche Mitarbeiter können - im Urlaubs- oder Krankheitsfall - einen Mitarbeiter vertreten?

31 Optimierung ohne Beziehungstyp- Attribute Kann optimiert werden Kasse(KNr, Wechselgeld,  Personalnummer) Kassierer(Personalnummer, Name)

32 Optimierung mit Beziehungstyp- Attributen Berücksichtigung der Einsatzzeiten keine Optimierung möglich Kasse(KNr, Wechselgeld) BesetztVon(  KNr,  Personalnummer, von, bis) Kassierer(Personalnummer, Name)

33 Optimierungen - Übersicht grün: eine Relation R(a 1,..., b 1,...) rot: zwei Relationen Ra(a 1,...) Rb(b 1,...,  a 1 ) blau: drei Relationen Ra(a 1,...) Rk(  a 1,  b 1 ) Rb(b 1,...)


Herunterladen ppt "Datenbankentwurf Gerhard Röhner September 2003. Modellierung."

Ähnliche Präsentationen


Google-Anzeigen