【发布时间】:2011-11-13 00:56:17
【问题描述】:
我的 SQL Server 2008 R2 数据库中有一个表,我想添加一个名为 LastUpdated 的列,每次更新行时都会自动更改该列。这样,我就可以看到每一行的最后更新时间。
SQL Server 2008 R2 似乎没有像早期版本那样处理这种情况的数据类型,所以我不确定最好的方法。我想知道使用触发器,但是当触发器更新行时会发生什么?这会再次触发触发器等吗?
【问题讨论】:
-
你在想
timestamp吗?这与日期/时间无关,现在称为rowversion -
什么数据类型在早期版本中处理了这个问题?如果您正在考虑
TIMESTAMP或ROWVERSION,那您就错了 - 此列不包含日期/时间信息,不能用于确定“上次更新”... -
我在考虑时间戳/行版本,我认为这与我发布时的日期有关。从那以后我发现它从来都不是!
标签: triggers sql-server-2008-r2