程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL Server數據庫技術(75)

SQL Server數據庫技術(75)

編輯:關於SqlServer

上面介紹了有關觸發器的概念、作用和一些基本問題,下面我們將分別介紹在MS SQLServer 中如何用SQL Server 管理工具Enterprise Manager 和Transaction_SQL 來創建觸發器。
在創建觸發器以前必須考慮到以下幾個方面:

  • CREATE TRIGGER 語句必須是批處理的第一個語句;
  • 表的所有者具有創建觸發器的缺省權限,表的所有者不能把該權限傳給其它用戶;
  • 觸發器是數據庫對象,所以其命名必須符合命名規則;
  • 盡管在觸發器的SQL 語句中可以參照其它數據庫中的對象,但是,觸發器只能創建在當前數據庫中;
  • 雖然觸發器可以參照視圖或臨時表,但不能在視圖或臨時表上創建觸發器,而只能在基表或在創建視圖的表上創建觸發器;
  • 一個觸發器只能對應一個表,這是由觸發器的機制決定的;
  • 盡管TRUNCATE TABLE 語句如同沒有WHERE 從句的DELETE 語句,但是由於TRUNCATE TABLE 語句沒有被記入日志,所以該語句不能觸發DELETE 型觸發器;
  • WRITETEXT 語句不能觸發INSERT 或UPDATE 型的觸發器。

當創建一個觸發器時,必須指定觸發器的名字,在哪一個表上定義觸發器,激活觸發 器的修改語句,如INSERT、 DELETE、 UPDATE。 當然兩個或三個不同的修改語句也可 以都觸發同一個觸發器,如INSERT 和UPDATE 語句都能激活同一個觸發器。

12.6.1 用管理工具Enterprise Manger 創建觸發器
其操作步驟如下:

  1. 啟動Enterprise Manger, 登錄到指定的服務器上。
  2. 展開數據庫,然後展開要在其上創建觸發器的表所在的數據庫,然後單擊該表。
  3. 右擊鼠標,在彈出菜單中選擇ALL Tasks, 然後單擊Manage Triggers…。
  4. 在名字框中選擇new, 在文本框中輸入觸發器文本,如圖12-5 所示。
  5. 單擊Check Syntax 檢查語句是否正確。
  6. 單擊Apply, 在Name 下拉列表中會有新創建的觸發器名字。
  7. 單擊OK, 關閉窗口創建成功。
    SQL Server數據庫技術(75)(圖一)

12.6.2 用CREATE TRIGGER 命令創建觸發器
SQL Server數據庫技術(75)(圖二)

SQL Server數據庫技術(75)(圖三)


各參數的說明如下:

  • trigger_name
    是用戶要創建的觸發器的名字觸發器的名字,
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved