0
我遇到以下問題:我在表A上有一個觸發器,其目的是計算一些值並將它們插入到完全不同的表B中。 問題是在那個邏輯的某個地方,有一個循環需要將新鮮插入到表B中的值。 我注意到SQL Server在退出觸發器後立即執行所有INSERT
命令。在不同的表中讀取由觸發器插入的值
ALTER TRIGGER [dbo].[InsertTrade]
ON [dbo].[Blotter]
AFTER INSERT
AS
BEGIN
/* compute @Variables */
INSERT INTO [dbo].[CompletelyUnrelatedTableWithoutTriggersOnIt]
VALUES @Variables
是否存在的COMMMIT
-ing是INSERT
,並且能夠在觸發讀取這些值,同時還什麼辦法?
感謝, D.
嗨,感謝您的快速回答。關於你的第一點,我只插入變量,即:INSERT ... VALUES(@ FirstVar,@ SecondVar,...,@ NthVar) 基本上,我想要的是以下內容: 1.當插入新行時在表A 中2.使用來自表A和表B的值並在表B中插入新行的運行觸發器 3.如果滿足一些條件,觸發器可能必須在表B中插入2行或更多行。對於插入表B中的第二行,部分由在第2步插入的第一個/前一行確定。 我需要讀取以前寫入的值,但它們不在那裏 – user1158959
我希望前面的解釋有助於減少在我的問題 – user1158959
更多的光,所以如果你插入三個記錄到表A你只想執行一個插入到表B(或者你有)無論哪種方式,OUTPUT可能是你最好的選擇,它可以讓你在觸發器中使用插入值到B中。 –