資料庫之觸發器

2022-04-08 06:27:07 字數 1039 閱讀 7421

資料庫之觸發器

觸發器——看到這個名字總是會想到數電中學過的觸發器,有輸入端和輸出端,根據電平的高低來觸發。

資料庫中的觸發器是個特殊的儲存過程,主要是通過事件進行觸發而被執行的,而儲存過程可以通過儲存過程名稱而被直接呼叫。

www.2cto.com  

作用:使用t——sql語句進行複雜的邏輯處理,基於乙個表建立,但是可以對多個表進行操作,因此常常用於複雜的業務規則。可以完成如下功能:

1 、級聯修改資料庫中相關的表

2、執行比核查約束更為複雜的約束操作

3、拒絕或回滾違反引用完整性的操作。

4、比較表修改前後資料之間的差別,並根據差別採取相應的操作。

建立觸發器的規則和限制:

1、create trigger語句必須是批處理中的第乙個語句。

2、在預設情況下,建立觸發器的許可權將分配給資料表的所有者,且不能轉給其他使用者

3、觸發器是資料庫物件,其名稱必須遵循識別符號的命名規則。

4、雖然觸發器可以引用當前資料庫以外的物件,但是只能在當前資料庫中建立觸發器。

5、雖然不能在臨時資料表上建立觸發器,但是觸發器可以引用臨時資料表。

6、不能在系統資料表建立觸發器,也不可以引用系統資料庫。

7、在包含使用delete或updata操作定義中,不能定義instead of和instead of update觸發器。

8、truncate table語句不會引發delete觸發器,因為該語句沒有被記入日誌。

9、writetext語句不會引發insert或update觸發器

注意:當建立乙個觸發器時必須指定:名稱;在其上定義觸發器的表;觸發器將何時激發;啟用觸發器的資料修改語句。  www.2cto.com  

管理觸發器有兩種方法:一是使用企業管理器管理觸發器;二是使用t——sql管理觸發器。都可以對觸發器進行建立,修改,刪除。

table:觸發器所在的表名

type:指定列出的操作型別的觸發器。若不指定,則列出所有的觸發器。

例子:exec sp_helptrigger'employee'  

作者 劉騰騰

資料庫之觸發器

觸發器 看到這個名字總是會想到數電中學過的觸發器,有輸入端和輸出端,根據電平的高低來觸發。資料庫中的觸發器是個特殊的儲存過程,主要是通過事件進行觸發而被執行的,而儲存過程可以通過儲存過程名稱而被直接呼叫。作用 使用t sql語句進行複雜的邏輯處理,基於乙個表建立,但是可以對多個表進行操作,因此常常用...

資料庫之觸發器

觸發器 看到這個名字總是會想到數電中學過的觸發器,有輸入端和輸出端,根據電平的高低來觸發。資料庫中的觸發器是個特殊的儲存過程,主要是通過事件進行觸發而被執行的,而儲存過程可以通過儲存過程名稱而被直接呼叫。作用 使用t sql語句進行複雜的邏輯處理,基於乙個表建立,但是可以對多個表進行操作,因此常常用...

資料庫之觸發器

1.概述 觸發器是特殊的儲存過程。儲存過程是由使用者主動去呼叫執行,觸發器是資料庫在發生一些事件的時候主動呼叫。常見的觸發器 sql server 有instead of 和 after for 資料庫為觸發器特別的建立兩張表 inserted表 deleted表 這兩張表由資料庫維護,存在記憶體中...