gpt4 book ai didi

SQL Server 触发器更新另一个表的列

转载 作者:行者123 更新时间:2023-12-04 13:08:55 27 4
gpt4 key购买 nike

我有两个名为 Table A 的 SQL Server 表和 Table B .我有一个将一行插入到 Table A 中的应用程序和三行成 Table B同时。正如您在下面的屏幕截图中看到的,我们可以根据 ID 链接这些插入的记录。栏目Table A和TransID栏目Table B .


在表 B 上插入数据期间,如果 3 个插入行中的任何行包含名为 Printed 的值在 Printed专栏,我要更新我的Table A的相关记录PrintStatus列到 Printed以及。

如何为此编写 SQL Server 触发器?

最佳答案

最好的解决方案是在您的代码(应用程序)中执行此操作,但如果没有办法,
您可以像下面的触发器示例一样为表 B 编写插入后触发器:

CREATE TRIGGER [dbo].[YourTrigger] ON [dbo].[TableB]
AFTER INSERT
AS
DECLARE @id INT
BEGIN
SET NOCOUNT ON;
SET @id = (SELECT DISTINCT ID FROM Inserted)
IF EXISTS (SELECT * FROM Inserted WHERE Printed='Printed')
UPDATE TableA
SET PrintStatus='Printed'
WHERE ID = @id

END

可能这对你有帮助

关于SQL Server 触发器更新另一个表的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54504482/

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