我正在尝试在MSSMS上创建一个触发器,每次有人更新行时都会生成最后一次更新时间戳。
我在这里找到的常用解决方案很简单:
ALTER TRIGGER dbo.SetLastUpdatedBusiness
ON dbo.Businesses
AFTER UPDATE -- not insert!
AS
BEGIN
IF NOT UPDATE(LastUpdated)
BEGIN
UPDATE t
SET t.LastUpdated = CURRENT_TIMESTAMP -- not dbo.LastUpdated!
FROM dbo.Businesses AS t -- not b!
INNER JOIN inserted AS i
ON t.ID = i.ID;
END
END
GO
但我正在使用的表没有ID列来进行内部联接。如果您没有ID列,还有其他方法吗?
感谢。
编辑:我有一些建议在表中添加一个ID列,然后我可以进行内连接。