觸發器我就不多解釋了,保證資料的完整性的神器,嗯..也是減少程式設計師工作託管給資料庫操作的好幫手.就不講一些大道理了.通俗點,我們對資料庫的操作,無非就是增 刪 改 查.
觸發器就是在刪,改,增的時候(可以是運算元據前,也可以是運算元據後)額外的幫你做一些事情保證你資料庫的完整(ps:不知道為何,我們總監對觸發器總是深惡痛絕.. = = ,)
下面就來一發oracle觸發器的基本語法:
create or replace trigger trigger_name(觸發器名)
on table_name(你要新增的表)
[for each row]
when (condition)
declare
begin
--觸發器**
end;
[for each row]為可選項,如果註明了for eachrow,則說明了該觸發器是乙個行級的觸發器,dml語句處理每條記錄都會執行觸發器;否則是乙個語句級的觸發器,每個dml語句觸發一次。
when後跟的condition是觸發器的響應條件,只對行級觸發器有效,當操作的記錄滿足condition時,觸發器才被執行,否則不執行。condition中可以通過new物件和old物件(注意區別於前面的:new和:old,在**中引用需要加上冒號)來引用操作的記錄。
值得注意的是:
裡面的:new物件表示了插入的記錄,可以通過:new.column_name來引用記錄的每個字段值
:old物件表示修改前的記錄
ORACLE觸發器 行級觸發器
行級觸發器 本章介紹行級觸發器機制。大部分例子以insert出發器給出,行級觸發器可從insert update delete語句觸發。1 介紹 觸發器是儲存在資料庫已編譯的儲存過程,使用的語言是pl sql,用編寫儲存過程一樣的方式編寫和編譯觸發器。下面在sql plus會話中建立和示例乙個簡單的...
Oracle觸發器介紹 行級觸發器
行級觸發器 本章介紹行級觸發器機制。大部分例子以insert出發器給出,行級觸發器可從insert update delete語句觸發。1 介紹 觸 髮器是儲存在資料庫已編譯的儲存過程,使用的語言是pl sql,用編寫儲存過程一樣的方式編寫和編譯觸發器。下面在sql plus會話中建立和示例一 個簡...
Oracle觸發器簡介 建立 使用觸發器
觸發器類似與儲存過程,都是為了實現特殊功能而執行的 塊。觸發器不允許使用者顯示傳遞引數,不能夠返回引數值,不允許使用者呼叫觸發器。觸發器只是在oracle合適的時間自動呼叫,非常類似於面向程式設計中的 觸發器按照觸發事件型別 物件不同分為 語句觸發器,行觸發器,instead of觸發器,系統事件觸...