Datenbankdesign, Probleme mit Konstistenz in Dreiecksbeziehung

Datenbankdesign, Probleme mit Konstistenz in Dreiecksbeziehung

am 08.10.2004 16:07:55 von Frederik van Hagen

Hallo,
ich bin mir nicht sicher, ob das die richtige Newsgroup ist. Vielleicht
gehört's ja mehr nach de.comp.datenbanken.misc aber da ich mysql verwende...

Ich habe folgende Tabellen:

A, B, C sowie A2B und B2C und dann noch A2C.

Leider herrscht da eine Dreiecksbeziehung und ich bekomme sie nicht weg.

Ein Eintrag in A2C soll nur möglich sein, wenn es bereits A2B gibt.
Dazu gibt es in A2C folgende Felder: a2b_id sowie c_id, die per foreign
key referenzieren. Allerdings verhindert das ja nicht, dass es nicht
Einträge gibt, wo die c_id auf ein C referenzieren, welches nicht zu dem
B gehört, welches indirekt über die a2b_id referenziert wird.

Auch mögliche wäre eine Tabelle mit a_id, b2c_id allerdings gäbe es dann
für jede A - B Verbindung mehrere Einträge, das will ich auch nicht.

Ich kenne mich (ausser mit Foreign Keys) nicht mit Constraints oder was
da sonst noch so gibt aus.

Wie kann ich das Problem so lösen, dass bereits die Datenbank die
Konsistenz checkt? Oder geht das in diesem Fall nicht und mein Tooling
drum herum muss dieses tun?

Danke, Frederik

--
Replies only per Newsgroup. Email just for Spam.