Stefan Feeser
25-01-2002, 15:10
Hallo zusammen,
ich arbeite mit einem IDS (Informix Dynamic Server) in der Version 7.27. Hier möchte ich sicherstellen, dass bei einem eingefügten Tupel der Identifier dieses Tupels abgegriffen wird und in einer zweiten Tabelle dieser ebenfalls eingefügt wird. Dadurch möchte ich sicherstellen, dass die Referenzattribute in beiden Tabellen zu jeder Zeit identisch sind, ich also im ungünstigsten Fall für einen zweiten Identifier keine Informationen bekomme - ich weiss, eigentlich hätte man bei identischen Tabellen vom Design her die Attribute der zweiten Tabelle in der ersten integrieren müssen, ging aber hier halt nicht...
Kurz das Statement zum Erstellen des Triggers müßte wie folgt aussehen:
CREATE TRIGGER insertsicher
INSERT ON triggertest1
REFERENCING NEW AS neu
FOR EACH ROW
(INSERT INTO triggertest2(id)
VALUES (neu.id));
Das Problem ist hier jetzt nur, dass der Server beim Einfügen das
ja für jede Zeile macht, wenn ich aber hingegen etwa AFTER statt FOR EACH ROW verwende, kann ich das REFERENCING nicht verwenden.
Hat jemand da ne Idee wie das funktionukkeln könnte?
Gruß und Danke
Stefan
ich arbeite mit einem IDS (Informix Dynamic Server) in der Version 7.27. Hier möchte ich sicherstellen, dass bei einem eingefügten Tupel der Identifier dieses Tupels abgegriffen wird und in einer zweiten Tabelle dieser ebenfalls eingefügt wird. Dadurch möchte ich sicherstellen, dass die Referenzattribute in beiden Tabellen zu jeder Zeit identisch sind, ich also im ungünstigsten Fall für einen zweiten Identifier keine Informationen bekomme - ich weiss, eigentlich hätte man bei identischen Tabellen vom Design her die Attribute der zweiten Tabelle in der ersten integrieren müssen, ging aber hier halt nicht...
Kurz das Statement zum Erstellen des Triggers müßte wie folgt aussehen:
CREATE TRIGGER insertsicher
INSERT ON triggertest1
REFERENCING NEW AS neu
FOR EACH ROW
(INSERT INTO triggertest2(id)
VALUES (neu.id));
Das Problem ist hier jetzt nur, dass der Server beim Einfügen das
ja für jede Zeile macht, wenn ich aber hingegen etwa AFTER statt FOR EACH ROW verwende, kann ich das REFERENCING nicht verwenden.
Hat jemand da ne Idee wie das funktionukkeln könnte?
Gruß und Danke
Stefan