在Oracle中,我可以在插入/更新触发器中更改行值:new.column_name = new_value。 如何在MS SQL 2008 Trigger中执行相同的操作?
答案 0 :(得分:5)
与Oracle
不同,受影响的记录在集合中传递给SQL Server
个触发器,引用为INSERTED
和DELETED
。
您必须更新目标表:
UPDATE m
SET column_name = @new_value
FROM INSERTED i
JOIN mytable m
ON m.id = i.id
或者更好的是,创建一个INSTEAD OF
触发器。