当我们更新表1中column1中的单元格时,我必须更新表2中column2中的单元格以获取特定用户标识(行)。但我不断得到结果,表2中的整个列都已更新。谁能告诉我是否以及如何做到这一点?
(表1和表2有一个共同的列(userid))
这是我的尝试:
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TRIGGER UPDATE_TABLE2
ON dbo.TABLE1
AFTER INSERT,DELETE,UPDATE
AS
BEGIN
SET NOCOUNT ON;
UPDATE dbo.TABLE2
SET dbo.TABLE2.COLUMN2 = GETDATE()
FROM dbo.TABLE2 T2
join
dbo.TABLE1 T1
on T2.userid=T1.userid
where T2.userid=T1.userid
END
GO
答案 0 :(得分:0)
UPDATE dbo.TABLE2
SET dbo.TABLE2.COLUMN2 = GETDATE()
where dbo.TABLE2.userid= (select userid from inserted)
如果你想在UPDATE之后再做,也可以这样说:
CREATE TRIGGER UPDATE_TABLE2
ON dbo.TABLE1
AFTER UPDATE