如何在Update SQL Trigger中获取原始值

时间:2012-05-04 16:53:10

标签: sql-server-2008 triggers

我对触发器不太熟悉,所以感谢您的耐心等待。

我有一个数据库表,其中有四列用于用户文本输入,只有四个日期列显示上次更改用户文本输入的时间。我想要触发器做的是比较用户文本输入列的原始值和新值,如果它们不同,则使用getdate()更新日期列。我不知道该怎么做。我编写的代码无法获取字段的更新前值,因此无法将其与更新后的值进行比较。有谁知道怎么做?

(通常我会在存储过程中执行此操作。但是,此数据库表也可以由Access数据库直接编辑,我们无法将这些更改转换为使用存储过程。这只会让我们使用触发器。 )

1 个答案:

答案 0 :(得分:3)

在sql server中,触发器中有两个特殊的表,称为inserted和deleted。与实现触发器的表的结构相同。 插入有新版本,删除旧版本。