|
AB 150-A240NBDA 控制器
觸發器(trigger)是SQL server 提供給程序員和數據分析員來保證數據完整性的一種方法,它是與表事件相關的特殊的存儲過程,它的執行不是由程序調用,也不是手工啟動,而是由事件來觸發,比如當對一個表進行操作( insert,delete, update)時就會激活它執行。觸發器經常用于加強數據的完整性約束和業務規則等。 觸發器可以從 DBA_TRIGGERS ,USER_TRIGGERS 數據字典中查到。SQL3的觸發器是一個能由系統自動執行對數據庫修改的語句。
觸發器可以查詢其他表,而且可以包含復雜的SQL語句。它們主要用于強制服從復雜的業務規則或要求。例如:您可以根據客戶當前的帳戶狀態,控制是否允許插入新訂單。
(在邏輯電路中根據邏輯功能不同,可分為RS觸發器,D觸發器,同步觸發器等)
DML觸發器
當數據庫中表中的數據發生變化時,包括insert,update,delete任意操作,如果我們對該表寫了對應的DML觸發器,那么該觸發器自動執行。DML觸發器的主要作用在于強制執行業 務規則,以及擴展Sql Server約束,默認值等。因為我們知道約束只能約束同一個表中的數據,而觸發器中則可以執行任意Sql命令。
DDL觸發器
它是Sql Server2005新增的觸發器,主要用于審核與規范對數據庫中表,觸發器,視圖等結構上的操作。比如在修改表,修改列,新增表,新增列等。它在數據庫結構發生變化時執行,我們主要用它來記錄數據庫的修改過程,以及限制程序員對數據庫的修改,比如不允許刪除某些指定表等。
登錄觸發器
登錄觸發器將為響應 LOGIN 事件而激發存儲過程。與 SQL Server 實例建立用戶會話時將引發此事件。登錄觸發器將在登錄的身份驗證階段完成之后且用戶會話實際建立之前激發。因此,來自觸發器內部且通常將到達用戶的所有消息(例如錯誤消息和來自 PRINT 語句的消息)會傳送到 SQL Server 錯誤日志。如果身份驗證失敗,將不激發登錄觸發器。
SQL語法編輯
DELIMITER |
CREATE TRIGGER `<databaseName>`.`<triggerName>`
< [ BEFORE | AFTER ] > < [ INSERT | UPDATE | DELETE ] >
ON [dbo]<tableName> //dbo代表該表的所有者
FOR EACH ROW
BEGIN
WOODWARD LOAD SHARING MODULE
Woodward Governor Load Sharing &speed Control 2301A
Woodward Governor Load Sharing &speed Control 2301A
WOODWARD CONTROL AGLC 9905-096
WOODWARD CONTROL AGLC 9905-096
WOODWARD AUTOMATIC GENERATOR LOADING CONTROL
WOODWARD AUTOMATIC GENERATOR LOADING CONTROL
WOODWARD 9905-992 / 9905992 (USED TESTED CLEANED)
WOODWARD 9905-992 / 9905992 (USED TESTED CLEANED)
WOODWARD 9905-970 REV. L LINKNET 6 CHANNEL * NEW IN BOX *
WOODWARD 9905-970 REV. L LINKNET 6 CHANNEL * NEW IN BOX *
WOODWARD 9905-970 LINKNET 6 CHANNEL *NEW NO BOX*
WOODWARD 9905-970 LINKNET 6 CHANNEL *NEW NO BOX*
WOODWARD 9905-760 LINKNET TERMINATION MODULE * NEW IN BOX *
WOODWARD 9905-760 LINKNET TERMINATION MODULE * NEW IN BOX *
WOODWARD 9905-110 / 9905110 (USED TESTED CLEANED)
WOODWARD 9905-110 / 9905110 (USED TESTED CLEANED)
Woodward 9905-096 Automatic Generator Loading Control Rev. L, 115/230 VAC Supply




|