Datenbankmodelle 1. Das Entity-Relationship-Modell



Ähnliche Dokumente
Datenbankmodelle 1. Das Entity-Relationship-Modell. Prof. Dr. Bernhard Schiefer 2-1

Inhaltsverzeichnis. 1. Fragestellung

Fachdidaktik der Informatik Jörg Depner, Kathrin Gaißer

Übungsblatt 4. Aufgabe 7: Datensicht Fachkonzept (Klausur SS 2002, 1. Termin)

Themenblock 2: Datenmodellierung mit ERM

Kapitel DB:III. III. Konzeptueller Datenbankentwurf

Das Entity-Relationship-Modell

1 Mathematische Grundlagen

4. BEZIEHUNGEN ZWISCHEN TABELLEN

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1

Statuten in leichter Sprache

Lehrer: Einschreibemethoden

Entity-Relationship-Modell. Ein Studierender kann (oder muss) mehrere Vorlesungen hören. Eine Vorlesung wird i.a. von mehrerer Studierenden gehört.

Widerrufsbelehrung. Sie haben das Recht, binnen vierzehn Tagen ohne Angabe von Gründen diesen Vertrag zu widerrufen.

1 BEDIENUNGSANLEITUNG

Kapitel 04 Strukturiertes Entity-Relationship-Modell. 4 Strukturiertes Entity-Relationship- Modell

Erstellen und Bearbeiten von Inhalten (Assets)

Hilfedatei der Oden$-Börse Stand Juni 2014

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Lizenzierung von StarMoney 10 bzw. StarMoney Business 7 durchführen

4 Grundlagen der Datenbankentwicklung

Grundbegriffe der Informatik

Allgemeines zu Datenbanken

Zulassung nach MID (Measurement Instruments Directive)

GI-Technologien zur Umsetzung der EU-Wasserrahmenrichtlinie (WRRL): Wissensbasen. Teil 1: Einführung: Wissensbasis und Ontologie.

Fachbereich Wirtschaftswissenschaften Campus Sankt Augustin

2.5.2 Primärschlüssel

Einführung in Datenbanken

IT-Kompaktkurs. Datenbanken Skript zur Folge 5. Prof. Dr. Georg Herde Fachhochschule Deggendorf

WinWerk. Prozess 6a Rabatt gemäss Vorjahresverbrauch. KMU Ratgeber AG. Inhaltsverzeichnis. Im Ifang Effretikon

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

FAMILIENSTAND ALLEINERZIEHENDE MÜTTER

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

Widerrufsbelehrung der Free-Linked GmbH. Stand: Juni 2014

Checkliste. zur Gesprächsvorbereitung Mitarbeitergespräch. Aktivität / Frage Handlungsbedarf erledigt

Objektorientierte Programmierung

7DVWH.HOOQHU. Kassensystem SANYO (X&D6RIWKapitel 42

ER-Diagramme. eine Modellierung. Beziehungen der Elternschaft:

Erweiterung AE WWS Lite Win: AES Security Verschlüsselung

7 Rechnen mit Polynomen

Relationenmodell (RM)

Geld Verdienen im Internet leicht gemacht

SWE5 Übungen zu Software-Engineering

EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0. EDV Kurs 13/2

Um die Rücklagen ordnungsgemäß zu verbuchen, ist es wichtig, Schritt-für-Schritt vorzugehen:

Sichere Anleitung Zertifikate / Schlüssel für Kunden der Sparkasse Germersheim-Kandel. Sichere . der

Zwischenablage (Bilder, Texte,...)

Zur Wahrung der Widerrufsfrist reicht es aus, dass Sie die Mitteilung über die Ausübung des Widerrufsrechts vor Ablauf der Widerrufsfrist absenden.

Informatik Kurs Simulation. Hilfe für den Consideo Modeler

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

Hinweise in Leichter Sprache zum Vertrag über das Betreute Wohnen

Mit dem Tool Stundenverwaltung von Hanno Kniebel erhalten Sie die Möglichkeit zur effizienten Verwaltung von Montagezeiten Ihrer Mitarbeiter.

Dokumentenverwaltung im Internet

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER

Anleitung über den Umgang mit Schildern

Bereich METIS (Texte im Internet) Zählmarkenrecherche

inviu routes Installation und Erstellung einer ENAiKOON id

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: MORE Projects GmbH

Kurzanleitung bezüglich erforderlicher Rechnungsdaten

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Willkommen zum DBS I Praktikum!

Software-Engineering 2. Übungen zur Wiederholung. IT works. Metris GmbH

Fundamentals of Software Engineering 1

Einführung in. Logische Schaltungen

4. AuD Tafelübung T-C3

Dossier Kunden zu Fans Lesen Sie auf nur fünf Seiten, was es mit dem Fanmodell auf sich hat

Der Kundenmanager. Der Kundenmanager der Firma AED-SICAD ist ein Bestandteil des Web Order System (WOS) und unterscheidet zwischen folgenden Kunden:

PTV VISWALK TIPPS UND TRICKS PTV VISWALK TIPPS UND TRICKS: VERWENDUNG DICHTEBASIERTER TEILROUTEN

Informationen zum Ambulant Betreuten Wohnen in leichter Sprache

ISA Server 2004 Erstellen einer Webverkettung (Proxy-Chain) - Von Marc Grote

LDAP Konfiguration nach einem Update auf Version 6.3 Version 1.2 Stand: 23. Januar 2012 Copyright MATESO GmbH

Whitepaper. Produkt: combit Relationship Manager 7. combit Relationship Manager -rückläufer Script. combit GmbH Untere Laube Konstanz

Fragebogen. P1 P2 P3 Demenz

Lichtbrechung an Linsen

Feiertage in Marvin hinterlegen

Was ist Sozial-Raum-Orientierung?

Wie erreiche ich was?

SEQUENZDIAGRAMM. Christoph Süsens

Warum kann ein Flugzeug fliegen?

FORUM HANDREICHUNG (STAND: AUGUST 2013)

Kapitalerhöhung - Verbuchung

Tutorium zur Mikroökonomie II WS 02/03 Universität Mannheim Tri Vi Dang. Aufgabenblatt 3 (KW 44) ( )

S/W mit PhotoLine. Inhaltsverzeichnis. PhotoLine

1. TEIL (3 5 Fragen) Freizeit, Unterhaltung 2,5 Min.

impact ordering Info Produktkonfigurator

Klassendiagramm. Kurzer Überblick über UML - Stand BlaBla

Hochschule Karlsruhe Klausur EAI Prof. Dr. Christian Pape. Klausur EAI WS 05/06. Note: Bearbeitungszeit 90 Minuten Keine Hilfsmittel

UML Klassendiagramm. Igor Karlinskiy, Mikhail Gavrish

Einstellungen für SEPA-Lastschriften in der VR-NetWorld-Software

teamsync Kurzanleitung

Quickreferenz V1.1. Frank Naumann

Professionelle Seminare im Bereich MS-Office

Use Cases. Use Cases

Anleitung für die Online-Bewerbung über LSF auf Lehrveranstaltungen aller Lehramtsstudiengänge

Vorlesung Datenbanken II A Klausur

Korrelation (II) Korrelation und Kausalität

Schnelleinstieg in die (cs) AuftragPro

4.4 AnonymeMärkteunddasGleichgewichtder"vollständigen Konkurrenz"

Bedienungsanleitung - Webtool

Transkript:

Datenbankmodelle 1 Das Entity-Relationship-Modell

Datenbankmodelle ER-Modell hierarchisches Modell Netzwerkmodell relationales Modell objektorientierte Modelle ER Modell - 2

Was kann modelliert werden? statische Eigenschaften Objekte Beziehungen dynamische Eigenschaften Operationen Beziehungen zwischen Operationen Integritätsbedingungen über Objekte, Beziehungen und Operationen ER Modell - 3

Abstrakte & konkrete Modelle Abstrakt Daten: ER-Modell Algorithmen: Flussdiagramme, Struktogramme Konkret Daten: hierarchisches Modell, Netzwerkmodell, Relationenmodell Algorithmen: PASCAL, Java, C++ ER Modell - 4

Entity-Relationship-Modell Modellierung von Objekttypen (Entities) Wer und was? Objekt der realen oder der Vorstellungswelt Beziehungstypen (Relationships) Wer mit wem? kauft Artikel 2-stellige Beziehung: X kauft Artikel Y ER Modell - 5

Typen & Exemplare Das ER-Modell beschreibt immer Beziehungen zwischen Typen! kauft Artikel Zugehörige Exemplarbeziehungen wären z.b. Harry Hirsch kauft Buch "Java EE kompakt" Egon Eitel kauft Buch "Java Persistence API" kauft Buch "Datenbanken in 21 Tagen" ER Modell - 6

Mehrstellige Beziehungen An einer Beziehung können auch 3 oder mehr Entities beteiligt sein: Shop kauft Artikel Sprechweise: Ein X kauft einen Artikel Y in einem Shop Z. ER Modell - 7

Transformation mehrstelliger Beziehungen N-stellige Beziehungen können immer in 2-stellige transformiert werden aber wie? Sind drei 2-stellige Beziehungen äquivalent zu einer 3-stelligen? Verkäufer Artikel kauft verkauft Verkäufer bedient Artikel kauft ER Modell - 8

Transformation mehrstelliger Beziehungen - Veranschaulichung Beispiel: Artikel Verkäufer A0001 Micky Tom A0002 Daisy Tom A0002 Micky Jerry kauft verkauft bedient Artikel Artikel Verkäufer Verkäufer A0001 Tom A0001 Micky Micky Tom A0002 Tom A0002 Daisy Daisy Tom A0002 Jerry A0002 Micky Micky Jerry Wer hat Tom den Artikel A0002 verkauft? ER Modell - 9

Korrekte Transformation mehrstelliger Beziehungen Die korrekte Transformation erfordert einen zusätzlichen Entity-Typ! ER Modell - 10

Funktionale Beziehungen funktionale Beziehungen Die Beziehung hat Abbildungscharakter: Jedem Objekt vom Typ E1 wird durch die Beziehung f genau eines vom Typ E2 zugeordnet. E1 f E2 Beispiel: Artikel gehört_zu Warengruppe ER Modell - 11

ER-Modell - Rollen Nähere Bezeichnung der Art der Teilnahme an einer Beziehung Käufer Ware kauft Artikel Ersatzartikel ersetzter Artikel ersetzt Insbesondere notwendig bei rekursiven Beziehungen! ER Modell - 12

Attribute Beschreibung der näheren Eigenschaften von Objekten und Beziehungen Ausführliche Angabe in der Form Name : Wertebereich Basistypen int, float, text, char evtl. mit Längen: int(5), char(10) evtl. mit Bereichen Beispiel: alter : int [0-110] ArtNr: int(5) Name: char(12) Gewicht: int Artikel Menge der angebotenen Datentypen hängt vom eingesetzten Werkzeug ab ER Modell - 13

Attribute - Beispiel Beispiel: KndNr ArtNr Name Preis Käufer kauft Ware Artikel Datum Preis ER Modell - 14

Integritätsbedingungen Wichtiges Modellierungsziel Die DB soll ein Abbild der realen Welt sein. Nur gültige Zustände sollen auch dargestellt werden können. Entitytypen, Beziehungen und Attribute allein reichen nicht aus Worüber sagt das Beispielsmodell nicht aus? KndNr ArtNr Name Preis Käufer kauft Ware Artikel ER Modell - 15 Datum Preis

Schlüssel Schlüssel bestimmt das Objekt eindeutig - d.h. es gibt keine 2 Exemplare mit den gleichen Werten im Schlüssel Sie sollen helfen Duplikate in der DB zu vermeiden Kennzeichnung durch Unterstreichung Alternative: Spezielle Icons, oder Markierung der Verbindungslinie Falls mehrere alternative Schlüssel existieren, kann/muss im graphische ER-Modell nur einer gekennzeichnet werden! KndNr Name Anschrift ER Modell - 16

Zusammengesetzte Schlüssel Atomarer Schlüssel Der Schlüssel besteht aus genau einem Attribut. Zusammengesetzter Schlüssel Manchmal reicht ein Attribut nicht aus, um ein Objekt eindeutig zu identifizieren. Besonders häufig bei Objekten in Hierarchien: KonzernNr, WerkNr, FilialNr, LagerNr,... Beispiel: FilialNr KndNr Name Anschrift ER Modell - 17 Wenn die Filialen die nnummern unabhängig voneinander vergeben

Optionale Attribute Kennzeichnung optionaler Attribute Ein Wert kann angegeben werden - falls bekannt. Es muss aber nicht in jedem Fall ein Wert vorhanden sein. Unterschiedliche Methoden zur Kennzeichnung im Umlauf. Beispiel: FilialNr KndNr Name Anschrift Geburtsdatum ER Modell - 18

Attribute vereinfacht Kompaktere Darstellung - mit Dia ER Modell - 19

Kardinalität Wer steht wie oft mit wem in Beziehung? Achtung: Unterschiedliche Verwendungen im Umlauf! Beispiele: Chen-Notation (1976) Schlageter/Stucky-Notation (1977) ISO-Notation (1982) IDEF1X IE ("Krähenfuß") UML... ER Modell - 20

Chen-Notation Erster Ansatz (1976) Gibt an: Wie viele Objekt sind einem Objekt der anderen Seite maximal zugeordnet? N 1 Artikel gehört_zu Warengruppe Wird gelesen: Einem Artikel ist 1 Warengruppe zugeordnet. Einer Warengruppe können N Artikel zugeordnet werden. N M kauft Artikel ER Modell - 21

Chen-Notation (II) Problematisch: Die Notation ist nur bei 2-stelligen Beziehungen anwendbar. Ursache: Es wird eine Aussage über die Anzahl der Objekte, die der anderen Seite zugeordnet sind gemacht! Was nun, wenn dort mehrere Objekte sind? Beispiel: Ein Gutschein, der nur beim Kauf eines Artikels angewandt werden kann: Gutschein? N kauft? Artikel Einem Gutschein ist immer genau ein zugeordnet. Ein Artikel kann aber von vielen n gekauft werden! ER Modell - 22

Schlageter/Stucky-Notation Eingeführt 1977 um das Problem mit mehrstelligen Beziehungen zu lösen. Ähnlich wie Chen-Notation jedoch verdreht. Gibt an: Mit wie viel anderen Objekten steht ein Objekt in Beziehung? 1 N Artikel gehört_zu Warengruppe Gutschein 1 N kauft N Artikel ER Modell - 23

ISO - Notation Ausführlichste Notation: [min,max] ähnlich Schlageter/Stucky Gibt an: Wie oft nimmt ein Objekt mindestens (min) und wie oft höchstens (max) an einer Beziehung teil? Beispiel: [1,1] [0,*] Artikel gehört_zu Warengruppe ER Modell - 24

ISO-Notation (Beispiel) [min, max] - Notation (ISO TC97/SC5/WG3 1982) Shop [0,*] [0,*] kauft [0,*] Artikel [1,1] [1,1] wohnt_in gehört_zu [0,1] [0,*] [0,*] von nächste Filiale nach [0,*] Ort Warengruppe ER Modell - 25

Übung: Kardinalitäten Wie sieht das ISO-Beispiel in der Chen-Notation aus? ER Modell - 26

Identifizierende Beziehungen - Schwache Objekte - Abhängige/schwache Objekte Sie haben keine eigene Existenzberechtigung ohne das (starke) Objekt von dem sie abhängen. Identifizierende Beziehung Eine funktionale Beziehung, die zum Schlüssel gehört. Zugehöriges starkes Objekt ist ab Erzeugung fixiert. Es kann das starke Objekt zu dem es gehört nie wechseln! ER Modell - 27

Beispiel: Identifizierende Beziehungen Beispiel: Bestellung Bestellung besteht aus Bestellkopf Bestellposten BestellNr: 6712312 : Harry Hirsch Datum: 11.01.2011 PosNr ArtNr Stück 1 4711 2 2 6789 1 3 1234 5 PosNr ArtNr BestellNr Stück Posten [1,1] gehört_zu [1,4] Datum Bestellung ER Modell - 28

Darstellung mit Dia: Alternative Darstellung identifizierender Beziehungen ER Modell - 29

Unterschiede? Wohnung [1,1] [1,*] Haus Wohnung [1,1] [1,*] Besitzer ER Modell - 30

ER-Modell - Beispiel Privatkunde Firma Beschreibung [1,1] [1,1] [1,1] Ist_ein Ist_ein Shop beschreibt [0,1] [0,1] [0,*] [0,*] [0,*] kauft [0,*] Artikel [1,1] [1,1] wohnt_in gehört_zu [0,1] [0,*] [0,*] von nächste Filiale nach [0,*] Ort Warengruppe ER Modell - 31

Erweiterungen des ER-Modells IS-A-Beziehungen Verallgemeinerung vorhandener Entities. z.b. PRIVATKUNDE ist ein KUNDE Kann als spezieller abhängiger Typ aufgefasst werden. Partitionierung/Spezialisierung Zerlegung einer vorhandenen Menge in Sonderfälle. ER Modell - 32

Kompakte Notation für IS-A Beziehung statt: Privatkunde Firma ist_ein ist_ein Privatkunde Firma ER Modell - 33

Generalisierung vs. Spezialisierung Manche Erweiterungen des ER-Modells sehen hier aussagekräftigere Modellierungsmöglichkeiten vor. Spezialisierung Zerlegung einer Ausgangsmenge in Spezialfälle. Hier kann noch unterschieden werden, ob die Zerlegung vollständig ist. Generalisierung Bildung von Oberbegriffen. Die Mitglieder der Ausgangsmenge sind nur teilweise der zeitweise Mitglieder des Generalisierungstyps. ER Modell - 34

Arten von Subtypen Disjunkte / nicht disjunkte Untermengen Vollständige / nicht vollständige Überdeckung Beispiele: Privatkunde Firmenkunde Geschäftspartner Lieferant andere ER Modell - 35

IDEF1X vs. IE ER Modell - 36

Vollständige kompakte Notation disjunkt vollständig Privatkunde Firma Geschäftspartner nicht disjunkt nicht vollständig Lieferant ER Modell - 37

UML Primär eingesetzt zur objektorientierten Modellierung Klassen Attribute, Methoden Beziehungen zwischen Klassen Kann auch zur Datenbankmodellierung eingesetzt werden ER Modell - 40

ERM UML Beispiel ERM: KndNr ArtNr Name Preis [1,*] [0,*] kauft Artikel Käufer Ware Datum Beispiel UML: Artikel KndNr Name 0..* 1..* Käufer Ware ArtNr Preis Datum ER Modell - 41