触发器未将值插入正确的记录中

时间:2016-06-09 16:22:36

标签: sql sql-server triggers

我试图编写一个触发器,从表1中获取QuoteNumber并将其插入到表2中,其中ShippingIdentity匹配两个表中的记录。问题是QuoteNumber被插入其自己的行(记录)任何人都可以让我知道为什么?感谢。

ALTER TRIGGER InsertQuoteNumber
ON AccountInfo
FOR INSERT
AS
BEGIN

INSERT INTO ShippingInfo (QuoteNumber)
SELECT a.QuoteNumber 
FROM AccountInfo a
inner join inserted i on a.ShippingIdentity = i.ShippingIdentity 
END

1 个答案:

答案 0 :(得分:0)

你使用"插入"在你的描述中,但我认为你的意思是"更新"。也就是说,您希望修改ShippingInfo中的现有行以反映新的报价编号。

代码中的问题与您选择的单词一样简单。您正在使用INSERT命令,该命令会插入一个新行。如果要更新现有行,请使用UPDATE