判斷觸發器正在處理的是插入,刪除還是更新觸
導讀:1建站知識平常時寫觸發器(TRIGGER),一般會分別寫插入(INSERT),刪除(DELETE)和更新(UPDATE)單獨的觸發器seo網站優化培訓網站seo優化。
但是有時候,可以視看處進邏輯程度,可以把三者寫成一個觸發器,只是在其中稍作判斷而已。 你可以根據從下面方法判斷觸發器是是處網站seo優化課程理了插入,刪除還是更新觸發的:
復制代碼 代碼如下:
--宣告兩個變量 DECLARE @D BIT = 0 DECLARE @I BIT = 0 --如果在DELETED內部臨時觸發表找到記錄,說明舊數據被刪除 IF EXISTS(SELECT TOP 1 1 FROM DELETED) SET @D = 1 --如果在INSERTED內部臨時觸發表找到記錄,說明有新數據插入 IF EXISTS(SELECT TOP 1 1 FROM INSERTED) SET @I = 1 --如果兩個表都有記錄,說明觸發器是執行更新觸發 IF @I = 1 AND @D = 1 PRINT(N'更新。') --如果變量@I值被變更為1,而變量@D沒有變更,說明觸發器是執行插入觸發 IF @I = 1 AND @D = 0 PRINT(N'插入') --下面判斷成立,說明說明觸發器是執行刪除觸發 IF @I = 0 AND @D = 1 PRINT(N'刪除')
另外有關兩個內部臨時觸發表,觸發器的Inserted表和Deleted表 觸發器有兩個虛擬表,Inserted表和Deleted表,這兩個表在不同操作情況之下,表中的數據狀態可不一樣。 一、插入操作(INSERT)時:Inserted表有數據,Deleted表無數據。 二、更新操作(UPDATE)時:Inserted表有數據(新數據seo網站優化),Deleted表有數據(舊數據)。 三、刪除操高端網站建設作(DELETE)時:Inserted表無數據,Deleted表有數據。相關seo網站優化培訓網站seo優化。聲明: 本文由我的SEOUC技術文章主頁發布于:2023-05-22 ,文章判斷觸發器正在處理的是插入,刪除還是更新觸主要講述的是,觸發器,判斷觸發器正在處理的是插入,刪除網站建設源碼以及服務器配置搭建相關技術文章。轉載請保留鏈接: http://www.bifwcx.com/article/web_4301.html