Ich versuche, mehrere Trigger zu erstellen. Ein Trigger aktualisiert das Feld 'ysnAcknowledged', wenn das (verborgene) Feld 'Reprint' im selben Formular von Crystal Reports aktualisiert wird. Der zweite Trigger muss das Feld "Reprint" aktualisieren, wenn das Feld "ysnAcknowledged" vom Benutzer manuell aktualisiert wird (Kontrollkästchen "Formular"). Ich habe den ersten Auslöser, mein Problem ist, wenn ich das 'ysnAcknowledged'-Feld aktualisiere, wird es meinen zweiten Auslöser auslösen, den ersten Auslöser effektiv reversierend, bevor ich es will.Erstellen Sie einen SQL-Trigger, um einen vorherigen Trigger umzukehren
1. Auslöser:
CREATE TRIGGER SOPickListReprint
ON dbo.SalesOrder
AFTER UPDATE
AS
IF UPDATE(Reprint)
UPDATE dbo.SalesOrder
SET ysnAcknowledged = 1
2. Trigger:
CREATE TRIGGER SOPickListUpdate
ON dbo.SalesOrder
AFTER UPDATE
AS
IF UPDATE(ysnAcknowledged)
UPDATE dbo.SalesOrder
SET Reprint = 0
es in einem einzigen Trigger tun? * (Denken Sie daran, dass mehr als eine Zeile geändert werden kann, dieser Trigger gibt nur eine Zeile vor und aktualisiert dann jede Zeile in der Tabelle?) * – MatBailie
Trigger sind ** sehr herstellerspezifisch ** - fügen Sie also ein Tag hinzu um anzugeben, ob Sie 'mysql',' postgresql', 'sql-server',' oracle' oder 'db2' verwenden - oder etwas ganz anderes. –
Sie haben Recht! Das ist MSSQL. –