Eins-zu-Eins und Viele-zu-Viele
Eins-zu-Eins
Eine Eins-zu-Eins Beziehung ist eine, bei der jeder Datensatz in einer Tabelle genau einem Datensatz in einer anderen Tabelle entspricht. Im Gegensatz zu One-to-Many, bei dem ein Datensatz in einer Tabelle mit mehreren Datensätzen in einer anderen Tabelle in Beziehung stehen kann, ist bei der Eins-zu-Eins Verbindung jedes Datensatzpaar eindeutig verknüpft. Diese Beziehung umfasst zwei wesentliche Verbindungen:
- Die erste Tabelle hat einen foreign key, der auf den primary key der zweiten Tabelle verweist;
- Umgekehrt hat die zweite Tabelle einen foreign key, der auf den primary key der ersten Tabelle zeigt.
Hinweis
Die Eins-zu-Eins Beziehung beruht auf dem foreign key. Dieser foreign key sollte den Parameter “unique=True” enthalten.
In bestimmten Fällen kann ein Datensatz nur existieren, wenn ein anderer vorhanden ist, wobei letzterer auch eigenständig bestehen kann. Diese Art der Verknüpfung wird als Obligatorisches Eins-zu-Eins bezeichnet.
Betrachten Sie das folgende Diagramm:
Eine weitere Illustration:
Ein verpflichtendes Eins-zu-Eins: Jeder Reisepass muss an eine bestimmte Person gebunden sein. Allerdings kann eine Person auch ohne Reisepass existieren, wie dies bei Kindern der Fall ist.
Viele-zu-Viele
Eine Viele-zu-Viele-Beziehung umfasst zwei Tabellen, die mehrere entsprechende Datensätze zueinander enthalten können, oft vermittelt durch eine Zwischentabelle. Im Gegensatz zur Eins-zu-Viele-Beziehung, bei der ein Datensatz in einer Tabelle mehreren Datensätzen in einer anderen entspricht, ermöglicht eine Viele-zu-Viele-Beziehung, dass mehrere Datensätze beider Tabellen miteinander in Beziehung stehen.
Diese Zwischentabelle sollte drei Spalten haben: id (ein Identifikator für jede Beziehung), first_table_id und second_table_id. Die Spalten first_table_id und second_table_id fungieren als Fremdschlüssel, die wieder auf ihre jeweiligen Tabellen verweisen.
Zum Beispiel betrachten Sie einen Carsharing-Dienst, bei dem sowohl driver_id als auch car_id als Fremdschlüssel fungieren. In der Tabelle „driver-car“ werden fünf unterschiedliche Beziehungen dargestellt:
- (id 1 und 2) - Fahrer John (driver_id=1) fuhr die Autos Subaru (car_id=1) und BMW (car_id=3);
- (id 3, 4 und 5) - Fahrer Emma (driver_id=2) fuhr die Autos Subaru (car_id=1), Mercedes (car_id=2) und BMW (car_id=3).
Mehrere Fahrer fuhren verschiedene Autos: Sowohl John als auch Emma fuhren sowohl Subaru als auch BMW.
Datenbankschema:
Typischerweise werden diese Zwischentabellen in Diagrammen weggelassen. Wie oben ersichtlich, wird die driver-car-Tabelle nicht angezeigt.
1. Wählen Sie eine 1:1-Beziehung:
2. Wählen Sie eine Viele-zu-Viele-Beziehung:
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Awesome!
Completion rate improved to 8.33
Eins-zu-Eins und Viele-zu-Viele
Swipe um das Menü anzuzeigen
Eins-zu-Eins
Eine Eins-zu-Eins Beziehung ist eine, bei der jeder Datensatz in einer Tabelle genau einem Datensatz in einer anderen Tabelle entspricht. Im Gegensatz zu One-to-Many, bei dem ein Datensatz in einer Tabelle mit mehreren Datensätzen in einer anderen Tabelle in Beziehung stehen kann, ist bei der Eins-zu-Eins Verbindung jedes Datensatzpaar eindeutig verknüpft. Diese Beziehung umfasst zwei wesentliche Verbindungen:
- Die erste Tabelle hat einen foreign key, der auf den primary key der zweiten Tabelle verweist;
- Umgekehrt hat die zweite Tabelle einen foreign key, der auf den primary key der ersten Tabelle zeigt.
Hinweis
Die Eins-zu-Eins Beziehung beruht auf dem foreign key. Dieser foreign key sollte den Parameter “unique=True” enthalten.
In bestimmten Fällen kann ein Datensatz nur existieren, wenn ein anderer vorhanden ist, wobei letzterer auch eigenständig bestehen kann. Diese Art der Verknüpfung wird als Obligatorisches Eins-zu-Eins bezeichnet.
Betrachten Sie das folgende Diagramm:
Eine weitere Illustration:
Ein verpflichtendes Eins-zu-Eins: Jeder Reisepass muss an eine bestimmte Person gebunden sein. Allerdings kann eine Person auch ohne Reisepass existieren, wie dies bei Kindern der Fall ist.
Viele-zu-Viele
Eine Viele-zu-Viele-Beziehung umfasst zwei Tabellen, die mehrere entsprechende Datensätze zueinander enthalten können, oft vermittelt durch eine Zwischentabelle. Im Gegensatz zur Eins-zu-Viele-Beziehung, bei der ein Datensatz in einer Tabelle mehreren Datensätzen in einer anderen entspricht, ermöglicht eine Viele-zu-Viele-Beziehung, dass mehrere Datensätze beider Tabellen miteinander in Beziehung stehen.
Diese Zwischentabelle sollte drei Spalten haben: id (ein Identifikator für jede Beziehung), first_table_id und second_table_id. Die Spalten first_table_id und second_table_id fungieren als Fremdschlüssel, die wieder auf ihre jeweiligen Tabellen verweisen.
Zum Beispiel betrachten Sie einen Carsharing-Dienst, bei dem sowohl driver_id als auch car_id als Fremdschlüssel fungieren. In der Tabelle „driver-car“ werden fünf unterschiedliche Beziehungen dargestellt:
- (id 1 und 2) - Fahrer John (driver_id=1) fuhr die Autos Subaru (car_id=1) und BMW (car_id=3);
- (id 3, 4 und 5) - Fahrer Emma (driver_id=2) fuhr die Autos Subaru (car_id=1), Mercedes (car_id=2) und BMW (car_id=3).
Mehrere Fahrer fuhren verschiedene Autos: Sowohl John als auch Emma fuhren sowohl Subaru als auch BMW.
Datenbankschema:
Typischerweise werden diese Zwischentabellen in Diagrammen weggelassen. Wie oben ersichtlich, wird die driver-car-Tabelle nicht angezeigt.
1. Wählen Sie eine 1:1-Beziehung:
2. Wählen Sie eine Viele-zu-Viele-Beziehung:
Danke für Ihr Feedback!