AB 150-A240NBDA 控制器
觸發(fā)器(trigger)是SQL server 提供給程序員和數(shù)據(jù)分析員來(lái)保證數(shù)據(jù)完整性的一種方法,它是與表事件相關(guān)的特殊的存儲(chǔ)過(guò)程,它的執(zhí)行不是由程序調(diào)用,也不是手工啟動(dòng),而是由事件來(lái)觸發(fā),比如當(dāng)對(duì)一個(gè)表進(jìn)行操作( insert,delete, update)時(shí)就會(huì)激活它執(zhí)行。觸發(fā)器經(jīng)常用于加強(qiáng)數(shù)據(jù)的完整性約束和業(yè)務(wù)規(guī)則等。 觸發(fā)器可以從 DBA_TRIGGERS ,USER_TRIGGERS 數(shù)據(jù)字典中查到。SQL3的觸發(fā)器是一個(gè)能由系統(tǒng)自動(dòng)執(zhí)行對(duì)數(shù)據(jù)庫(kù)修改的語(yǔ)句。
觸發(fā)器可以查詢(xún)其他表,而且可以包含復(fù)雜的SQL語(yǔ)句。它們主要用于強(qiáng)制服從復(fù)雜的業(yè)務(wù)規(guī)則或要求。例如:您可以根據(jù)客戶(hù)當(dāng)前的帳戶(hù)狀態(tài),控制是否允許插入新訂單。
(在邏輯電路中根據(jù)邏輯功能不同,可分為RS觸發(fā)器,D觸發(fā)器,同步觸發(fā)器等)
DML觸發(fā)器
當(dāng)數(shù)據(jù)庫(kù)中表中的數(shù)據(jù)發(fā)生變化時(shí),包括insert,update,delete任意操作,如果我們對(duì)該表寫(xiě)了對(duì)應(yīng)的DML觸發(fā)器,那么該觸發(fā)器自動(dòng)執(zhí)行。DML觸發(fā)器的主要作用在于強(qiáng)制執(zhí)行業(yè) 務(wù)規(guī)則,以及擴(kuò)展Sql Server約束,默認(rèn)值等。因?yàn)槲覀冎兰s束只能約束同一個(gè)表中的數(shù)據(jù),而觸發(fā)器中則可以執(zhí)行任意Sql命令。
DDL觸發(fā)器
它是Sql Server2005新增的觸發(fā)器,主要用于審核與規(guī)范對(duì)數(shù)據(jù)庫(kù)中表,觸發(fā)器,視圖等結(jié)構(gòu)上的操作。比如在修改表,修改列,新增表,新增列等。它在數(shù)據(jù)庫(kù)結(jié)構(gòu)發(fā)生變化時(shí)執(zhí)行,我們主要用它來(lái)記錄數(shù)據(jù)庫(kù)的修改過(guò)程,以及限制程序員對(duì)數(shù)據(jù)庫(kù)的修改,比如不允許刪除某些指定表等。
登錄觸發(fā)器
登錄觸發(fā)器將為響應(yīng) LOGIN 事件而激發(fā)存儲(chǔ)過(guò)程。與 SQL Server 實(shí)例建立用戶(hù)會(huì)話(huà)時(shí)將引發(fā)此事件。登錄觸發(fā)器將在登錄的身份驗(yàn)證階段完成之后且用戶(hù)會(huì)話(huà)實(shí)際建立之前激發(fā)。因此,來(lái)自觸發(fā)器內(nèi)部且通常將到達(dá)用戶(hù)的所有消息(例如錯(cuò)誤消息和來(lái)自 PRINT 語(yǔ)句的消息)會(huì)傳送到 SQL Server 錯(cuò)誤日志。如果身份驗(yàn)證失敗,將不激發(fā)登錄觸發(fā)器。
SQL語(yǔ)法編輯
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




|