Oracle觸發器簡介

2021-05-23 03:00:24 字數 1146 閱讀 8280

oracle觸發器型別:     

1、語句觸發器(對乙個sql語句執行一次,分為before和after)

例項:

create trigger_name

before insert or update or delete --也可以是after

of column_name --可選,限定列名

on tablename

referencing old as old_value new as new_value --可選,為新舊值取別名

when (condition is true) --可選,限定條件

begin

:new_value.column_name := 0; --注意新值的引用方法

end;

2、行觸發器(對被影響的每一行執行一次)

例項:create trigger_name

before insert on tablename

for each row --注意關鍵字

begin

:new.column_name := 0;

end;

3、insteadof觸發(用觸發器中定義的邏輯代替sql語句想要執行的動作)

例項:create trigger_name

instead of insert --注意關鍵字

on tablename

begin

:new.column_name := 0;

end;

4、系統條件觸發器

例項:create or replace trigger trig_log_info

after create or drop on schema

begin

...end;

5、使用者事件觸發器

例項:create or replace trigger trig_logon

after log on database

when (user = 'sys)

begin

...end;

Oracle觸發器簡介 建立 使用觸發器

觸發器類似與儲存過程,都是為了實現特殊功能而執行的 塊。觸發器不允許使用者顯示傳遞引數,不能夠返回引數值,不允許使用者呼叫觸發器。觸發器只是在oracle合適的時間自動呼叫,非常類似於面向程式設計中的 觸發器按照觸發事件型別 物件不同分為 語句觸發器,行觸發器,instead of觸發器,系統事件觸...

觸發器簡介

觸發器 trigger 是個特殊的儲存過程,它的執行不是由程式呼叫,也不是手工啟動,而是由事件來觸發,不能帶引數,比如當對乙個表進行操作 insert,delete,update 時就會啟用它執行。觸發器經常用於加強資料的完整性約束和業務規則等。觸發器可以從 dba triggers user tr...

前觸發器和後觸發器簡介

觸發器是一種特殊的儲存過程。當 insert update 或者delete 語句修改表中乙個或者多個行時執行觸發器。因為 sql server 對特定表上的每乙個指定操作呼叫乙個觸發器,所以可以使用觸發器擴充套件 sql sever 的內建完整性和資料操縱功能.注意 不像delete 語句,tra...