sqlserver insert 触发器

来源:互联网 发布:淘宝鸿星尔克 编辑:程序博客网 时间:2024/05/17 00:16

写insert触发器时请兼容 select into多行插入的情况。

http://technet.microsoft.com/zh-cn/library/ms190752.aspx

-- Trigger valid for multirow and single row inserts-- and optimal for single row inserts.USE AdventureWorks2012;GOCREATE TRIGGER NewPODetail3ON Purchasing.PurchaseOrderDetailFOR INSERT ASIF @@ROWCOUNT = 1BEGIN   UPDATE Purchasing.PurchaseOrderHeader   SET SubTotal = SubTotal + LineTotal   FROM inserted   WHERE PurchaseOrderHeader.PurchaseOrderID = inserted.PurchaseOrderIDENDELSEBEGIN      UPDATE Purchasing.PurchaseOrderHeader   SET SubTotal = SubTotal +       (SELECT SUM(LineTotal)      FROM inserted      WHERE PurchaseOrderHeader.PurchaseOrderID       = inserted.PurchaseOrderID)   WHERE PurchaseOrderHeader.PurchaseOrderID IN      (SELECT PurchaseOrderID FROM inserted)END;

0 0
原创粉丝点击