Beziehungen SQL 1:1

tobiastt

Erfahrenes Mitglied
Hallo

ich möchte eine 1:1 Beziehung erstellen zwischen den Tabellen A und B. Beide haben die Spalte NR. Wenn ich in B was lösche soll der Datensatz in A gelöscht werden, wenn keine weiteren Tabellen auf den Satz zugreifen. Wenn ich in A was lösche soll es in A und in allen anderen gelöscht werden. Wie ein Dreieck A ist ganz oben und darunter die Tabellen B, C, D.....

Wie mach ich das

Danke

Gruß Tobias
 
Hallo!

Wenn eine so "enge Verbindung" zwischen zwei Tabellen besteht, sollte man sich Gedanken machen, ob man diese Tabellen nicht zu einer zusammenführen könnte.

Gruß Tom
 
Hallo!

Bsp.:
Du hast zwei Entitäten A und B. Ein A kennt immer genau ein B und ein B kennt immer genau ein A.

Tabelle A:
id, nutzdaten1, nutzdaten2, fk_id_b

Tabelle B:
id, nutzdaten1, nutzdaten2, fk_id_a

Der Fremdschlüssel in Tabelle A (fk_id_b) zeigt nun auf den Wert der id des entsprechenden Datensatzes in Tabelle B. Umgekehrt zeigt der Fremdschlüssel (fk_id_a) in Tabelle B auf die id des entsprechenden Datensatzes in Tabelle A.
Zusätzlich kann man hier mit not-null Constraints Arbeiten. Ist das ganze als Aggregation oder Komposition modelliert? Je nachdem könnte man auch mit kaskadierendem Löschen Arbeiten. Zur Gewährleistung der referentiellen Integrität lassen sich auch Foreign Key Constrainst verwenden.

Gruß Tom
 
Das schreit ja förmlich nach einer Tabelle – aber gut, wenn damit vielleicht die DB-Zugriffe zu schnell sind …
 
Hallo

also ich versuchs mal zu erklären.

Es werden Motoren getestet mit x - Parametern. Zu jeden Motor mit genau einer Seriennummer gehört ein Satz an Daten...Ölverbrauch....Leistung usw. Jetzt hab ich die Daten ein bissel getrennt nach Typ, weil alles in einer Tabelle wäre sehr viel (Tabelle wäre sehr lang) Eigentlich könnte alles in eine Tabelle. Wenn ich es auf mehrere Tabellen verteile brauche ich ja auch keine Beziehungen oder Jeder Datensatz ist durch die Seriennummer eideutig Identifiziert. Also ein Motor hat nur einen Ölverbrauch und eine Leistung usw. ist eben nur nicht alles in einer Tabelle.

Ist das O.K so Dann lass ich die Beziehungen weg sind ja hier Quatsch

Gruß Tobias
 

Neue Beiträge

Zurück