程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> MS SQL基礎教程:觸發器的應用

MS SQL基礎教程:觸發器的應用

編輯:關於SqlServer

在以上部分我們討論了觸發器的優缺點、工作原理以及創建觸發器的具體方法。接下來我們將闡述各種不同復雜程度的觸發器的應用。

12.9.1 插入型觸發器的應用

12.9.1 插入型觸發器的應用

更新型觸發器有兩種類型:通常意義上的更新型觸發器和用於檢查列改變的更新型觸發器,這主要是因為更新操作可以涉及到數據項。

通常意義上的更新型觸發器;

在前面我們已經提到更新操作包括兩個部分,先將需更新的內容從表中刪除掉,然後插入新值。因此,更新型觸發器同時涉及到刪除表。和插入表下面結合具體例子來對其進行討論。

在有些更新中,更新的內容並不是整個記錄,而僅僅是一列或幾列,這時就要用到用於檢查列改變的更新型觸發器。它與通常意義上的觸發器不同之處主要表現在它包括以下保留字:

在用Transaction_SQL 的CREATE TRIGGER 命令創建觸發器那部分我們已經給出上述保留字的具體含義。下面我們將給出兩個例子,這兩個例子分別用到了IF UPDATE(column) 和IF (COLUMNS_UPDATED()。

注意:必須首先刪除與表title已建立主外鍵的各關系,上述觸發器才能被觸發。

12.9.4 嵌套觸發器

當某一觸發器執行時,其能夠觸發另外一個觸發器,這種情況稱之為觸發器嵌套。在MS SQL Server 中觸發器能夠嵌套至32 層。如果不需要嵌套觸發器,可以通過sp_configure選項來進行設置。

在執行過程中,如果一個觸發器修改某個表,而這個表已經有其它觸發器,這時就要使用嵌套觸發器。

注意:必須刪除與sales表已建立的各主外鍵關系,上面的觸發器才能被觸發。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved