觸發(fā)器什么時(shí)候執(zhí)行

觸發(fā)器是一種特殊類型的存儲(chǔ)過程。觸發(fā)器主要是通過事件(增、刪、改)進(jìn)行觸發(fā)被自動(dòng)調(diào)用執(zhí)行的。觸發(fā)器常用于強(qiáng)制業(yè)務(wù)規(guī)則,它是一種高級(jí)約束,通過事件進(jìn)行觸發(fā)而被執(zhí)行。而存儲(chǔ)過程可以通過存儲(chǔ)過程的名稱被調(diào)用。

觸發(fā)器什么時(shí)候執(zhí)行

觸發(fā)器(trigger)是SQL server 提供給程序員和數(shù)據(jù)分析員來(lái)保證數(shù)據(jù)完整性的一種方法,它是與表事件相關(guān)的特殊的存儲(chǔ)過程,它的執(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ā)時(shí)機(jī):指定觸發(fā)器的觸發(fā)時(shí)間。如果指定為BEFORE,則表示在執(zhí)行DML操作之前觸發(fā),以便防止某些錯(cuò)誤操作發(fā)生或?qū)崿F(xiàn)某些業(yè)務(wù)規(guī)則;如果指定為AFTER,則表示在執(zhí)行DML操作之后觸發(fā),以便記錄該操作或做某些事后處理。

觸發(fā)事件:引起觸發(fā)器被觸發(fā)事件,即DML操作。既可以是單個(gè)觸發(fā)事件,也可以是多個(gè)觸發(fā)事件的組合(只能用OR邏輯組合,不能使用AND邏輯組合)。

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊6 分享