Logo Logo
InfoHome Themen Projekte Links Software
Themen
JavaHamster
BlueJ
Java
HTML
XHTML
CSS
XML
Datenbanken
Datenbanksysteme
Datenbankentwurf
ER-Modell
Komplexität
IS-A Beziehung
Relationales Modell
Relationenalgebra
MySQL
Theoretische Informatik
PHP
Kara
Lego-Roboter
Algorithmen

Das Entity-Relationship-Modell

Um die Modellierung der Realität systematischer gestalten zu können, gibt es verschiedene Standardstrategien. Eine der bekanntesten zur Erstellung von Datenbank-Anwendungen ist das sogenannte Entity-Relationship-Modell (kurz ER-Modell genannt). Das ER-Modell wurde zuerst von P.P. Chen 1976 vorgeschlagen und verknüpft Objekte (Entities) und ihre Beziehungen (Realationships) zueinander in einem gemeinsamen Modell. Dabei versteht man unter einem Entity ein konkretes Objekt der Realität, z.B. den Schüler Karl Meier, unter einem Entity-Typ eine sinnvolle Klasse von einzelnen Entities, in unserem Beispiel wäre das der Typ "Schüler". Die Entities eines Typs besitzen gemeinsame Eigenschaften, Attribute genannt, im Beispiel "Name, Vorname", usw. Die Attribute können atomar sein, d.h. nur einen Wert umfassen, mehrere Werte ermöglichen oder selbst wieder aus einzelnen Attributen zusammengesetzt sein. Man kann ein Objekt mit seinen Attributen graphisch sehr gut veranschaulichen:

Dabei wird der Entity-Typ durch ein Rechteck dargestellt, die Attribute durch mit dem Rechteck verbundene Kreise. Ein zusammengesetztes Attribut wie "Adresse" wird durch entsprechende Folgekreise gezeichnet. Ein Attribut wie "Vorher besuchte Schule", das einen oder mehrere Einträge haben kann, erscheint als Doppelkreis. Solche Attribute heißen Mehrfachattribute.

Ein oder mehrere Attribute, die ein Entity eindeutig charakterisieren, werden Schlüssel genannt. In unserem Beispiel wäre ein möglicher Schlüssel die Kombination der Attribute "Name, Vorname, Geburtsdatum", denn es erscheint doch extrem unwahrscheinlich, daß es zwei Schüler mit gleichem Nachnamen, Vornamen und Geburtsdatum gibt. Es denkbar, daß noch andere Attributmengen mögliche Schlüssel sind. In diesem Fall wird einer der Kandidaten als Primärschlüssel vereinbart und durch Unterstreichen der Attributnamen kenntlich gemacht. Häufig verwendet man auch künstliche Attribute, um einen Primärschlüssel zu schaffen. In unserem Beispiel wäre das eine Schüler-Nummer, die jedes Entity eindeutig charakterisiert.

Zwischen den einzelnen Entities können Beziehungen (Relationships) bestehen, zwischen Entity-Typen existieren entsprechend Beziehungs-Typen. Beziehungs-Typen werden grafisch durch Rauten dargestellt, in die man die Beziehung notiert. Auch Beziehung-Typen können Attribute besitzen. Als Beispiel betrachten wir den Beziehungs-Typ "besucht" zwischen den Entity-Typen "Schüler" und "Kurs", die "Note" als Attribut hat.

Zwischen Entities kann es mehr als eine Beziehung geben, wie das folgende Beispiel zeigt.

Ein Beziehungs-Typ kann sich auch auf mehr als zwei Entity-Typen beziehen: Verschiedene Großhändler liefern verschiedene Artikel an unterschiedliche Kunden. Die Lieferbeziehung ist also durch ein Tripel (Großhändler, Artikel, Kunde) gekennzeichnet.

Allerdings sind die zweiwertigen Beziehungen die weitaus wichtigsten.

» drucken: pdf | html

© 2004-2024 M. Blanke · Ursulaschule · Kleine Domsfreiheit 11-18 · 49074 Osnabrück