T-SQL 2005更新触发器 [英] T-SQL 2005 Update Triggers
本文介绍了T-SQL 2005更新触发器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个带有MS SQL Server 2005数据库的第三方软件包.其中一个表(ADDRESS)的MODIFYDATE列是一个DateTime,每次更改记录时都应更新该日期,但是由于软件中的错误,它不会被更新.
我的解决方案是在表上创建UPDATE TRIGGER,将当前日期和时间添加到该字段中.
I have a 3rd party software package with a MS SQL Server 2005 database. One of the tables (ADDRESS) has a column MODIFYDATE which is a DateTime that should be updated each time the record is changed, but due to a bug in the software, it is not being updated.
My solution is create an UPDATE TRIGGER on the table, that buts the current Date and Time into the field.
CREATE TRIGGER trgUpdateModifyDate
ON sysdba.[ADDRESS]
FOR UPDATE
AS
BEGIN
SET NOCOUNT ON;
UPDATE [ADDRESS] SET MODIFYDATE = GETDATE() WHERE ?????
END
GO
我的问题是,如何确定哪些行已更改?
谢谢
My question is, how do I identify which row(s) have been changed?
Thanks
推荐答案
旧值存储在deleted
中,新值存储在inserted
中.
参考: http://msdn.microsoft.com/en-us/library /aa258254(v=sql.80).aspx [ ^ ]
在SQL Server中创建修改后的列 [
Old values are stored indeleted
, and new values are stored ininserted
.
Ref:http://msdn.microsoft.com/en-us/library/aa258254(v=sql.80).aspx[^]
Create a Modified On Column in SQL Server[^]
这篇关于T-SQL 2005更新触发器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文