Hallo,
ich hab schon länger keinen Trigger mehr geschrieben, deshalb diese Frage.
Ich möchte einen Spaltenwert eines Record einer Tabelle2 ändern, wenn in Tabelle 1 alle Records, die auf den Record in Tabelle2 zeigen, einen bestimmten Wert haben.
Also:
Tabelle1:
ID FK_Tabelle2 VALUE
1 77 WERT2
2 77 WERT2
3 77 WERT1
Tabelle2:
ID VALUE
77 WERT1 -- von WERT1 auf WERT2 wenn sich Record mit ID 3 von WERT1 auf WERT2 ändert
Könnte mir da jemand hilfestellung geben - mein wissen über trigger ist ein bisschen eingerostet.
Der Trigger sollte in einer MS SQL laufen.
Besten Dank
Das wäre mein erster Versuch (zwar für eine Derby DB aber halt mal ein erster versuch):
CREATE TRIGGER ROOT.MeinTrigger
AFTER UPDATE ON Tabelle1
REFERENCING OLD AS Tabelle1_SpalteVonTabelle1
FOR EACH ROW MODE DB2SQL
UPDATE Tabelle2 SET Tabelle2_SpalteVonTabelle2 = 'Anderer Wert';
ich hab schon länger keinen Trigger mehr geschrieben, deshalb diese Frage.
Ich möchte einen Spaltenwert eines Record einer Tabelle2 ändern, wenn in Tabelle 1 alle Records, die auf den Record in Tabelle2 zeigen, einen bestimmten Wert haben.
Also:
Tabelle1:
ID FK_Tabelle2 VALUE
1 77 WERT2
2 77 WERT2
3 77 WERT1
Tabelle2:
ID VALUE
77 WERT1 -- von WERT1 auf WERT2 wenn sich Record mit ID 3 von WERT1 auf WERT2 ändert
Könnte mir da jemand hilfestellung geben - mein wissen über trigger ist ein bisschen eingerostet.
Der Trigger sollte in einer MS SQL laufen.
Besten Dank
Das wäre mein erster Versuch (zwar für eine Derby DB aber halt mal ein erster versuch):
CREATE TRIGGER ROOT.MeinTrigger
AFTER UPDATE ON Tabelle1
REFERENCING OLD AS Tabelle1_SpalteVonTabelle1
FOR EACH ROW MODE DB2SQL
UPDATE Tabelle2 SET Tabelle2_SpalteVonTabelle2 = 'Anderer Wert';