2

我有一个数据库模型,其中每个表都有一个datetime名为 _CDateTime 的字段。

编辑行时,SQL ServerINSERT会将默认值GETDATE()写入此字段。

UPDATE另一方面,当对一行发出 an 时,SQL Server 不会自动更新 _CDateTime 字段。

我知道我可以使用timestamp日期类型,但这并不能传达任何时间信息(与其名称相反)。

另一种解决方案是为每个表编写一个触发器,但这是很多工作。

所以问题是:是否有任何全局方式可以像全局触发器一样在其中一个数据库表中更新行并自动将 _CDateTime 字段设置为当前日期和时间时触发?

PS:这个问题的答案表明没有这样的东西:Multi table Triggers SQL Server noob

4

1 回答 1

1

您需要一个 UPDATE 触发器来将 getdate() 应用于 _CDateTime 字段,或者您必须在每次更新时提交 _CDateTime = getDate()。没有自动的方法可以做到这一点

于 2012-10-18T10:12:50.870 回答