该表应该包含更新触发器的更新行

时间:2009-12-20 12:21:54

标签: sql-server sql-server-2008 triggers

不久之前我在SQL Server中阅读了Trigger的文章,它说我可以使用逻辑表“更新”更新行...而且我收到错误:

System.Data.SqlClient.SqlException: Invalid object name 'Updated'.

经过一段时间的谷歌,我发现了一些帖子说只有2个逻辑表可用:插入和删除......

我很困惑......我应该使用什么,因为我的Trigger依赖于包含更新行的Updated表,并使用它来插入另一个表或同一个表中的新PK ...

非常感谢

1 个答案:

答案 0 :(得分:9)

两个虚拟表称为 Inserted INSERTUPDATE触发器中提供)和 Deleted (在DELETEUPDATE触发器中提供)。

SQL Server触发器中没有Updated虚拟表。

对于FOR UPDATE触发器,Deleted表包含旧值,而Inserted表包含新值。

马克