sql - 更新触发器来填充ModifyDate字段
问题描述:
我正在寻找一个良好的更新触发器更新表的ModifyDate字段的示例。sql - 更新触发器来填充ModifyDate字段
这将是很好的处理更新命令更新表中的多个记录的情况。
有没有一个很好的模板或教程呢?
答
这里的剪切和粘贴(并重新命名,以保护无辜者),一个我以前写的很长一段时间(也就是它的工作原理):
CREATE TRIGGER dbo.TR_iu_MyTable__LastUpdated
on dbo.MyTable
after insert, update
AS
SET NOCOUNT on
UPDATE dbo.MyTable
set LastUpdated = getdate()
where MyTableId in (select MyTableId from inserted)
答
UPDATE {tablename}
SET ModifyDate = GETDATE()
FROM inserted
WHERE {tablename}.{primarykey} = inserted.{primarykey}
放置在标记为INSERT和UPDATE操作的触发器中将解决您的问题。
你也可以做类似的东西放置在标签仅在插入动作触发一个CREATEDATE
UPDATE {tablename}
SET CreateDate = GETDATE()
FROM inserted
WHERE {tablename}.{primarykey} = inserted.{primarykey}
。
为了什么数据库?你真的需要一个触发器 - 你可以在INSERT语句本身中调用GETDATE或其他适当的东西来填充modifydate列。 – 2010-05-12 22:24:24