1
我的触发器由于某种原因插入了4次,而最后一个仅被分组。基本上我想要做的是将信息插入到我的表中tbl_delete_Panel
我想将这些数据分组并将其插入到tbl_delete_panel_Orderin
中。SQL Server插入触发器不止一次插入
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE Trigger[dbo].[deletePanelSQL]
ON [dbo].[tbl_delete_Panel]
AFTER INSERT
AS
BEGIN
/* Insert Summed Quantity for each stud or track into tbl_delete_panel for deletion. tbl_delete_panel trigger will be triggered */
INSERT INTO tbl_delete_panel_Orderin (Part_Name, OrderID, SumOfQTY)
SELECT
tbl_delete_panel.Part_Name, tbl_delete_panel.OrderID,
Sum(tbl_delete_panel.QTY) AS SumOfQTY
FROM
tbl_delete_panel
GROUP BY
tbl_delete_panel.Part_Name, tbl_delete_panel.OrderID;
END;
您保持插入来自'tbl_delete_panel'完整的行,每次这个触发器被调用。你应该做的**是看看'Inserted'伪表,它可以包含多行,并插入这些行**(这是由触发触发器的语句新插入的) - 不是**整桌**每次! –