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

SQL SERVER 觸發器輕松掌握

編輯:關於SqlServer
觸發器
 
 
1、觸發器的 ''本質'':
 
 
觸發器是一種特殊的存儲過程,它不能被顯式地調用,
 
而是在往表中插入記錄、更改記錄或者刪除記錄時,當事件發生時,才被
 
自動地激活。
 
 
2、這樣做帶來的 ''功能'':
 
 
觸發器可以用來對表實施復雜的完整性約束,保持數
 
據的一致性,當觸發器所保護的數據發生改變時,觸發器會自動被激活,
 
響應同時執行一定的操作(對其它相關表的操作),從而保證對數據的不完整
 
性約束或不正確的修改。
 
 
觸發器可以查詢其它表,同時也可以執行復雜的T-SQL語句。觸發器和引
 
發觸發器執行的命令被當作一次事務處理,因此就具備了事務的所有特征。
 
 
注意: ''事務具備什麼特征?在觸發器中的作用?''
 
如果發現引起觸發器執行的T-SQL語句執行了一個非法操作,比如關於其它表的
 
相關性操作,發現數據丟失或需調用的數據不存在,那麼就回滾到該事件執行
 
前的SQL Server數據庫狀態。
 
 
3、觸發器的作用:
 
 
觸發器可以對數據庫進行級聯修改,這一點剛才已經說過了。
 
 
需要說明的是: ''觸發器和約束的關系和區別''
 
 
(1)一般來說,使用約束比使用觸發器效率更高。
 
 
(2)同時,觸發器可以完成比CHECK約束更復雜的限制。
 
說明:
 
2.1 與CHECK約束不同,在觸發器中可以引用其它的表。
 
2.2 觸發器可以發現改變前後表中數據的不一致,
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved