ORACLE 中觸發器的使用(基於系統事件與用戶處事件的觸發器)

 --alter trigger tr_befor_insert disable;--禁用某觸發器
create or replace trigger tr_insert_emp
       before insert
       on emp for each row
       begin
         insert into A values(:new.empno,:new.ename,:new.job,:new.mgr,:new.hiredate,:new.sal,:new.comm,:new.deptno);
       end;
       
       insert into emp values(1,'A','Soft',4,to_date('2011-09-12','yyyy-MM-dd'),1,1,20);
        select * from A;
        


:new.data ,:old.data

基於系統事件與用戶處事件的觸發器、

比如在數據庫啓動的時候

create or replace trigger tr_db_log
after startup
on database
begin
   --do what you want to do!
end;


以及可以使用 before shutdown

當清空表的觸發器
create or replace trigger tr_truncate_table
after truncate
begin
      insert into A_table values(ora_dict_obj_name,user,sysdate);
      --ora_dict_obj_name 指定被刪除對象的名稱
end;

 

禁用觸發器
alter tirgger tr_name disable;

啓用觸發器
alter trigger tr_name enable;
       
     

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章