如何實現插入數據時自動更新另外一個表的內容


 

1事務:在程序中,將插入代碼和更新代碼包裹在一個事務里,失敗后回滾,保證同時成功同時失敗。

2存儲過程:在數據庫寫存儲過程,存儲過程里面代碼包裹在事務里,失敗后回滾。

3觸發器:

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER TRIGGER [dbo].[tri_test] ON [dbo].[銷售情況信息]
    AFTER INSERT
AS
    BEGIN
        UPDATE  dbo.庫存基本信息
        SET     商品現存數量 = 商品現存數量 - inserted.銷售數量
		FROM    庫存基本信息,inserted
        WHERE	庫存基本信息.倉庫號 = inserted.倉庫號
    END

代碼說明:數據庫中update 操作實際是兩種操作組合完成的:inserted 和 delete, 分別有兩張表 insert 和delete 表, 更新就是將原有的數據移入delete表,將新數據移入inserted表。 為 [dbo].[銷售情況信息] 表創建了insert觸發器tri_test,after表示當該操作發生插入操作時后觸發;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM