Trigger insert old values- values that was updated

前端 未结 5 681
再見小時候
再見小時候 2020-12-08 09:57

I need to create trigger in SQL Server 2008 that gone insert all values from one row in which some value was changed into Log table!

For example if i have table Empl

5条回答
  •  时光取名叫无心
    2020-12-08 10:07

        createTRIGGER [dbo].[Table] ON [dbo].[table] 
    FOR UPDATE
    AS
        declare @empid int;
        declare @empname varchar(100);
        declare @empsal decimal(10,2);
        declare @audit_action varchar(100);
        declare @old_v varchar(100)
    
        select @empid=i.Col_Name1 from inserted i;  
        select @empname=i.Col_Name2  from inserted i;   
        select @empsal=i.Col_Name2 from inserted i;
        select @old_v=d.Col_Name from deleted d
    
        if update(Col_Name1)
            set @audit_action='Updated Record -- After Update Trigger.';
        if update(Col_Name2)
            set @audit_action='Updated Record -- After Update Trigger.';
    
        insert into Employee_Test_Audit1(Col_name1,Col_name2,Col_name3,Col_name4,Col_name5,Col_name6(Old_values)) 
        values(@empid,@empname,@empsal,@audit_action,getdate(),@old_v);
    
        PRINT '----AFTER UPDATE Trigger fired-----.'
    

提交回复
热议问题