ich hab hier ein kleines Problem mit einem Trigger.
Ich möchte bestimmte Spalteneintäge der gelöschen Zeilen protokollieren.
Wenn ich jedoch den Trigger aktiviere, dann ist es nicht mehr möglich diese Zeilen zu löschen.
Insgesammt sind es 3 Tabellen die zusammenhängen , ich möchte aber den Trigger nur auf einer Tabelle laufen lassen.
So sieht der Trigger aus
hat jemand ne Idee?
Ich möchte bestimmte Spalteneintäge der gelöschen Zeilen protokollieren.
Wenn ich jedoch den Trigger aktiviere, dann ist es nicht mehr möglich diese Zeilen zu löschen.
Insgesammt sind es 3 Tabellen die zusammenhängen , ich möchte aber den Trigger nur auf einer Tabelle laufen lassen.
So sieht der Trigger aus
Code:
CREATE TRIGGER REPORT ON [dbo].[POM_ORDER_CUSTOM_FIELD]
FOR DELETE
AS
DECLARE @ispom_order_fld_val VARCHAR(255)
DECLARE @ispom_order_fld_val2 VARCHAR(255)
--DECLARE @isProductID2 INT
--DECLARE @isProductName NVARCHAR(40)
--DECLARE @isProductName2 NVARCHAR(40)
IF EXISTS (SELECT pom_order_fld_val FROM Deleted WHERE pom_order_fld_name = 'ORDER_NR')
BEGIN
IF EXISTS (SELECT pom_order_fld_val FROM Deleted WHERE pom_order_fld_name = 'ORDER_POS')
BEGIN
SELECT @ispom_order_fld_val = (SELECT pom_order_fld_val FROM Deleted WHERE pom_order_fld_name = 'ORDER_NR')
SELECT @ispom_order_fld_val2 = (SELECT pom_order_fld_val FROM Deleted WHERE pom_order_fld_name = 'ORDER_POS')
Insert into Northwind.dbo.POM_AUSGABE(pom_nr,pom_pos) VALUES(@ispom_order_fld_val,@ispom_order_fld_val2)
END
ELSE
BEGIN
SELECT @ispom_order_fld_val = (SELECT pom_order_fld_val FROM Deleted WHERE pom_order_fld_name = 'ORDER_NR')
Insert into Northwind.dbo.POM_AUSGABE(pom_nr,pom_pos) VALUES(@ispom_order_fld_val,'KEINE POS')
END
END
hat jemand ne Idee?
Zuletzt bearbeitet: