SQL Server 2008触发器插入多行

时间:2013-09-11 15:24:39

标签: triggers multiple-instances sql-server-2008r2-express

我是触发器的新手,我所知道的是自学,所以请耐心等待我!

我创建了一个捕获数据更改的触发器(我正在使用SQL Server 2008 R2 Express),但我无法理解为什么我会在新表中插入两行。

这是我到目前为止所做的:

CREATE TRIGGER trg_Audit
ON EmployeeTable
FOR UPDATE
AS
    INSERT INTO NewTable (DBUser, executiontime, oldvalue, newvalue, employeeid, type, entrydate, ID)
       SELECT 
           SUSER_SNAME(), GETDATE(), 
           deleted.value, inserted.value, inserted.employeeid, inserted.type, 
           inserted.entrydate, inserted.ID
       FROM 
           inserted 
       INNER JOIN 
           deleted ON inserted.ID = deleted.ID

第二行正在做我想要的,即在新表中插入一条新记录,捕获修改列的旧数据和新数据,但是我也插入了没有旧值的行。

任何人都可以解释为什么这样吗?

非常感谢。

我现在发现了这个问题。我的旁边有一个隐藏的触发器。道歉。

0 个答案:

没有答案