gpt4 book ai didi

sql - 如何使用更新触发器更新另一个表?

转载 作者:行者123 更新时间:2023-12-03 10:56:35 25 4
gpt4 key购买 nike

我是触发器的新手,想在更新列时创建触发器并使用该值更新另一个表。

我有一个带有年份列的 table1,如果应用程序更新该年份列,我需要用同年的年份更新表 2。

ALTER TRIGGER [dbo].[trig_UpdateAnnualYear]
ON [dbo].[table1]
AFTER UPDATE
AS

if (UPDATE (intAnnualYear))
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;

-- Insert statements for trigger here

Update table2 set AnnualYear = intAnnualYear where table2.ID = table1.ID
END

最佳答案

你不引用table1触发器内。使用 inserted伪表以获取“之后”值。还请记住,更新可能会影响多行。

所以更换你当前的 update声明与

UPDATE table2
SET table2.annualyear = inserted.intannualyear
FROM table2
JOIN inserted
ON table2.id = inserted.id

关于sql - 如何使用更新触发器更新另一个表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5252802/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com