mssql pk <-> fk problem
-
hallo,
ich habe seit einiger zeit ein problem, das ich eine fk-beziehung nicht definieren kann und ich weiß nicht genau warum (möglicherweise zirkelbezug-problem wegen der update+delete cascade eigenschaft der beziehung).
das szenario: 2 tabellen a+b mit insgesamt 3 feldern, die alle dasselbe feld
"sample_id" (nvarchar 64) darstellen.a
------------
PK sample_idb
------------
PK sample_id
PK origindie sample_id in tabelle a stellt den pk dar, tabelle b ist praktisch eine
historientabelle, welche das entstehen neuer samples aus alten abbildet.
sample_id und origin in tabelle b müssen zusammen eindeutig sein, da es zu einem sample nur einen "vater" (origin) geben kann. ich habe jetzt einen fk in
tabelle b angelegt: dessen sample_id verweist auf die sample_id in tabelle a mit
update+delete cascade. wenn ich jetzt eine zweite beziehung anlegen will,
nämlich das feld origin von tabelle b zur sample_id von tabelle a (wieder mit
update+delete cascade) dann macht er das nicht. ich brauche das aber, denn wenn ein sample umbenannt wird, müssen auch alle einträge in der historientabelle b
umbenannt werden (bisher benennt er nur deren sample_id um).weiß jemand, wie ich das problem lösen kann, bzw. was das problem überhaupt genau ist.
mdf
tenim