開發也有年頭了,但是觸發器確實用的比較少,但是無容置疑觸發器確實不錯,
最近項目要求需要用到的觸發器特別多、頻繁,覺得很有必要記錄和積累下。
在觸發器語句中用兩個特殊的表一個是deleted表和inserted。
它們是通過觸發器操作自動創建駐留在內存中的臨時表。
--------------------------------------------------------------------------------------------------------------------------------------------
描述:
Deleted表用於存儲 DELETE和 UPDATE語句所影響的行的復本。在執行DELETE或 UPDATE語句時,行從觸發器表中刪除,並傳輸到 deleted表中。Deleted表和觸發器表通常沒有相同的行。
Inserted 表用於存儲 INSERT 和 UPDATE 語句所影響的行的副本。在一個插入或更新事務處理中,新建行被同時添加到 inserted 表和觸發器表中。Inserted 表中的行是觸發器表中新行的副本。
綜上可以總結一下:
觸發器的操作
deleted表和inserted表的數據變化
插入操作(Insert)
Inserted表有數據,Deleted表無數據
刪除操作(Delete)
Inserted表無數據,Deleted表有數據
更新操作(Update)
Inserted表有數據(新數據),Deleted表有數據(舊數據)