如果要顯示作用於表上的觸發器究竟對表有哪些操作,必須查看觸發器信息。在MS SQL Server 中,有多種方法查看觸發器信息。在本節我們將介紹兩種常用的方法,即通過MS SQL Server 的管理工具 Enterprise Manager 以及系統存儲過程sp_help sp_helptext 和sp_depends。
12.11.1 使用Enterprise Manager 顯示觸發器信息
使用Enterprise Manager 顯示觸發器信息其操作步驟如下:
(1) 運行Enterprise Manager, 登錄到指定的服務器。
(2) 選擇數據庫和表。如圖12-6 所示。
圖12-6 表加亮顯示後,也可單擊右鍵從彈出菜單中選擇All tasks manage trigger 完成。
(3) 從Action 菜單項中選擇ALL Tasks, 再選擇 Manage Triggers。 如圖12-7。
12.11.2 使用系統存儲過程查看觸發器
系統存儲過程sp_help sp_helptext 和sp_depends 分別提供有關觸發器的不同信息。
下面我們將分別對其進行介紹。
(1) sp_help
使用sp_help 系統過程的命令格式是:
sp_help ‘觸發器名字’
通過該系統過程,可以了解觸發器的一般信息,如觸發器的名字、屬性、類型、創建
時間。
(2) sp_helptext
通過sp_helptext 能夠查看觸發器的正文信息,其語法格式為:
sp_helptext ‘觸發器名’
(3) sp_depends
通過sp_depends 能夠查看指定觸發器所引用的表或指定的表涉及到的所有觸發器,其
語法形式如下:
sp_depends ‘觸發器名字’
sp_depends ‘表名’
注意:用戶必須在當前數據庫中查看觸發器的信息,而且被查看的觸發器必須已經被創建。
12.11.3 修改刪除觸發器
通過Enterprise Manager 和系統過程或Transaction_SQL 命令,可以修改觸發器的名字和正文。
(1) 使用sp_rename 命令修改觸發器的名字
其語法格式為:
sp_rename oldname,newname
(2) 通過Enterprise Manager 修改觸發器正文的操作步驟
通過Enterprise Manager 修改觸發器正文的操作步驟與查看觸發器信息一樣。修改完觸發器後要使用Check Syntax 選項對語句進行檢查。
(3) 通過Alert trigger 命令修改觸發器正文
(4) 刪除觸發器
用戶在使用完觸發器後可以將其刪除,只有觸發器屬主才有權刪除觸發器.刪除已創建的觸發器有兩種方法:
用系統命令DROP TRIGGER 刪除指定的觸發器,其語法形式如下:
DROP TRIGGER 觸發器名字
刪除觸發器所在的表時,MS SQL Server 將自動刪除與該表相關的觸發器。
本章小結
本章著重介紹了MS SQL Server 中的兩個重要概念:存儲過程和觸發器。我們指出存儲過程、觸發器是一組SQL 語句集,觸發器就其本質而言是一種特殊的存儲過程。存儲過程和觸發器在數據庫開發過程中,在對數據庫的維護和管理等任務中以及在維護數據庫參照完整性等方面具有不可替代的作用。因此無論對於開發人員,還是對於數據庫管理人員來說,熟練地使用存儲過程,尤其是系統存儲過程,深刻地理解有關存儲過程和觸發器的各個方面問題是極為必要的。
在本章中,我們通過較多詳盡的實例,全面而又透徹地展示了有關存儲過程和觸發器的各種問題。具體來說主要包括以下幾個方面:存儲過程、觸發器的概念、作用和優點; 創建、刪除、查看、修改存儲過程、觸發器的方法; 存儲過程,觸發器的各種不同復雜程度的應用; 創建、使用存儲過程和觸發器的過程中應注意的若干問題。