Beziehung m:n (Datenbank)
- Beziehung m:n (Datenbank)
-
Die Kardinalität beschreibt in der Datenbanktechnik die Komplexität oder den Grad einer Beziehung (engl. Relationship) zwischen zwei Entitätstypen in einem Entity-Relationship-Diagramm (ER-Diagramm). Die Kardinalität wird dabei an der die Beziehung beschreibenden Raute oder (bei fehlender Raute) an der Verbindungslinie, die zwischen den beiden beteiligten Entitätstypen besteht, notiert.
Die Entitätstypen zu beiden Seiten einer Kardinalität werden oft auch als Master (links) bzw. Detail (rechts), oder als Parent bzw. Child bezeichnet.
Ausführliche Definition
Die Kardinalität eines Beziehungstyps (Relationship-Typs) gibt an, mit wie viel anderen Entitäten eine Entität eines bestimmten Entitätstyps in einer konkreten Beziehung stehen muss bzw. kann. Die Angabe erfolgt im ER-Diagramm durch eine Zahl bzw. einen Buchstaben, oder eine Buchstabenkombination, an der die Beziehung repräsentierenden Raute, oder an der gelegentlich nur bestehenden Verbindungslinie zwischen den die Entitätstypen repräsentierenden Rechtecken.
Einteilung
Die gebräuchlichsten Beziehungen werden im Hinblick auf ihre Kardinalität wie folgt eingeteilt:
- In Chen-Notation im Sinne von (0..1):(0..1): eine Entität des einen Entitätstyps steht mit höchstens einer Entität des anderen Entitätstyps in Beziehung, und umgekehrt.
- In modifizierter Chen-Notation(MC-Notation): eine Entität des einen Entitätstyps steht mit genau einer Entität des anderen Entitätstyps in Beziehung; gleiches gilt für die Gegenrichtung.
- Eine Entität des einen Entitätstyps steht mit höchstens einer Entität des anderen Entitätstyps in Beziehung. In der Gegenrichtung steht eine Entität des einen Entitätstyps mit genau einer Entität des anderen Entitätstyps in Beziehung.
- Entspricht 1:1 in Chen-Notation.
- 1:n (Chen-Notation), c:mc (MC-Notation)
- Eine Entität des einen Entitätstyps steht mit beliebig vielen (0..∞) Entitäten des anderen Entitätstyps in Beziehung. In der Gegenrichtung steht eine Entität des einen Entitätstyps mit höchstens einer Entität des anderen Entitätstyps in Beziehung.
- m:n (Chen-Notation), mc:mc (MC-Notation)
- Eine Entität des einen Entitätstyps steht mit beliebig vielen Entitäten des anderen Entitätstyps in Beziehung; gleiches gilt für die Gegenrichtung.
Weitere Notationsstandards gibt es beim Entity-Relationship-Modell zu sehen.
Beispiele
1:1
In einer 1:1-Beziehung ist jeweils genau eine Entität höchstens einer anderen Entität zugeordnet.
Beispiele:
- Ehe: Ein Ehepartner ist (üblicherweise - d.h. von polygamen Sonderfällen abgesehen) mit genau einem Ehepartner verheiratet
- KFZ-Kennzeichen: Ein zugelassenes Fahrzeug hat genau ein KFZ-Kennzeichen und jedes KFZ-Kennzeichen gehört zu genau einem Fahrzeug
|
Schreibweise 1:1 |
|
1:n (n:1)
Einer Entität auf der einen Seite der Beziehung (Master) stehen keine, eine oder mehrere Entitäten auf der anderen Seite (Detail) gegenüber.
n:1 wird selten angegeben, da es ein von rechts nach links gelesenes 1:n ist.
Beispiele:
- Kunst: Ein Kunstwerk kann (zur gleichen Zeit) nur in einem Museum (als Original) sein; Im Museum dagegen werden mehrere Werke präsentiert. ⇒ Museum 1:n Kunstwerke
- Familie: Ein Kind hat genau eine leibliche Mutter, diese Mutter kann mehrere Kinder haben. ⇒ Mutter 1:n Kinder
- Unser Planetensystem: Die Sonne scheint auf mehrere Planeten, jedoch hat jeder Planet nur die eine Sonne. ⇒ Sonne 1:n Planeten
|
Schreibweise 1:n |
|
Vorüberlegung: |
n:m
Auf beiden Seiten können beliebig viele Entitäten in Beziehung zueinander stehen.
Ein häufiger Schreibfehler ist: n:n. Das würde aber implizieren, dass auf beiden Seiten gleich viele Entitäten vorhanden sind.
Beispiele:
- Student ↔ Professor: Ein Professor unterrichtet üblicherweise mehrere Studenten. Ein Student hört Vorlesungen von mehreren Professoren. ⇒ Professor m:n Student
- Eigentum an Immobilien: Eine Immobilie kann mehreren Eigentümern gehören (Eigentümergemeinschaft). Ein Eigentümer kann mehrere Immobilien besitzen. ⇒ Eigentümer m:n Immobilie.
- Läden ↔ Produkte: Ein Laden kann verschiedene Produkte haben, genauso kann aber das Produkt in verschiedenen Läden vorhanden sein. ⇒ Läden m:n Produkte.
|
Schreibweise n:m |
|
Vorüberlegung:
|
Umsetzung des ER-Modells in Datenbanktabellen im relationalen Datenmodell
1:1
Hier wird der Primärschlüssel einer der beiden Tabellen als Fremdschlüssel der anderen Tabelle in eine zusätzliche Spalte aufgenommen. Bei welcher der Tabellen das geschieht, ist technisch irrelevant. Praktisch versucht man die reale Abhängigkeit darzustellen, indem man den Primärschlüssel der Master-Tabelle in eine zusätzliche Spalte der Detail-Tabelle aufnimmt.
1:n
Die Detail-Tabelle erhält eine zusätzliche Spalte, die als Fremdschlüssel den Primärschlüssel der Master-Tabelle aufnimmt. Bei einer 1:n-Beziehung nennt man das Attribut, das mehrere „Instanzen“ haben kann, Mehrwertiges Attribut.
m:n
m:n-Beziehungen können in den meisten relationalen Datenbanken nicht direkt umgesetzt werden. Zur Realisierung wird eine zusätzliche Tabelle erstellt, die die Primärschlüssel beider Tabellen als Fremdschlüssel enthält. Die m:n-Beziehung wird also aufgelöst, und man erhält eine weitere Datenbanktabelle, die zwei 1:n-Beziehungen realisiert.
Oft werden für die Bezeichnung der die m:n-Beziehung realisierende Tabelle die Bezeichnungen der zwei daran beteiligten Tabellen verknüpft. Gibt es zwei Tabellen "Student" und "Professor", kann die weitere Tabelle "StudentProfessor" heißen.
Literatur
- Alfons Kemper, André Eickler: Datenbanksysteme. Eine Einführung. R. Oldenbourg, München 1999, ISBN 3-486-27392-2
- Ramez Elmasri, Shamkant Navathe: Grundlagen von Datenbanksystemen. Pearson Studium, München 2002, ISBN 3-8273-7136-8
- Tobias Eggendorfer: Datenbanksysteme für Wirtschaftsinformatiker. Books on Demand, Norderstedt 2005, ISBN 3-8334-2493-1
- Helmut Jarosch: Datenbankentwurf. Eine beispielorientierte Einführung für Studenten und Praktiker. Vieweg, Wiesbaden 2002, ISBN 3-528-15800-X
- Hans Schwinn: Relationale Datenbanksystem. Hanser, München 1992, ISBN 3-446-15782-4
- Hermann Saurer; Relationale Datenbanken. Addison-Wesley Verlag, München 2002, ISBN 3-8273-2060-7
Wikimedia Foundation.
Schlagen Sie auch in anderen Wörterbüchern nach:
Datenbank — Verzeichnis; Liste; Aufstellung; Tabelle; Register; Aufzählung; Gliederung; Auflistung; Datensammlung; elektronischer Karteikasten (umgangssprachlich) * * * … Universal-Lexikon
Datenbank — Ein Datenbanksystem (DBS) ist ein System zur elektronischen Datenverwaltung. Die wesentliche Aufgabe eines DBS ist es, große Datenmengen effizient, widerspruchsfrei und dauerhaft zu speichern und benötigte Teilmengen in unterschiedlichen,… … Deutsch Wikipedia
Netzwerk-Datenbank — Das Netzwerkdatenbankmodell wurde von der Data Base Task Group (DBTG) des Programming Language Committee (später COBOL Committee) der Conference on Data Systems Language (CODASYL) vorgeschlagen, der Organisation die auch für die Definition der… … Deutsch Wikipedia
Relationale Datenbank — Eine relationale Datenbank dient zur elektronischen Datenverwaltung in Computersystemen und beruht auf dem relationalen Datenbankmodell. Dieses wurde 1970 von Edgar F. Codd erstmals vorgeschlagen und ist bis heute trotz einiger Kritikpunkte ein… … Deutsch Wikipedia
Schlüssel (Datenbank) — Ein Schlüssel dient in einer Relationalen Datenbank dazu, die Tupel einer Relation eindeutig zu identifizieren. Anschaulich kann man sich eine Relation als Tabelle vorstellen. Ein Schlüssel für eine solche Tabelle ist dann eine Gruppe von Spalten … Deutsch Wikipedia
Master-Detail-Beziehung — Unter einer Master Detail Beziehung versteht man in der Softwareentwicklung eine Beziehung zwischen zwei Blöcken von angezeigten Daten in einem Computerprogramm, wobei der zweite Block (Detail) detailliertere Informationen zu den Daten des ersten … Deutsch Wikipedia
Objektrelationale Datenbank — Eine Objektrelationale Datenbank (kurz ORDB), auch objektrelationales Datenbankmanagementsystem (kurz ORDBMS) genannt, stellt das Bindeglied zwischen klassischen relationalen Datenbanken und Objektdatenbanken dar. Sie kommen überall dort zum… … Deutsch Wikipedia
Hierarchische Datenbank — Datei:Hierarchisches Datenbankmodell.png Hierarchisches Datenbankmodell Ein Hierarchisches Datenbankmodell ist das älteste Datenbankmodell, es bildet die reale Welt durch eine hierarchische Baumstruktur ab. Jeder Satz (Record) hat also genau… … Deutsch Wikipedia
Relation (Datenbank) — Formale Grundlage der Relation im Sinne einer Datenbankrelation ist die mathematische Definition. Die Relation ist die Basis der relationalen Algebra, die von Edgar F. Codd entwickelt wurde. Eine Relation besteht aus Attributen und Tupeln. Ein… … Deutsch Wikipedia
IHOP (Datenbank) — iHOP (information Hyperlinked Over Proteins) ist eine frei zugängliche Literatursuchmaschine, die in Abstracts von Pubmed Artikeln vorkommende Gen und Proteinbezeichnungen als Hyperlinks verwendet und somit die Suche nach thematisch miteinander… … Deutsch Wikipedia