ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 【原创】创建DDL触发器捕捉schema所有对象改变的记录

【原创】创建DDL触发器捕捉schema所有对象改变的记录

Linux操作系统 作者:小猛奋斗 时间:2013-12-03 10:47:09 0 删除 编辑
创建记录表
drop table ddl_log_qiang purge;
create table ddl_log_qiang 
(
operation   varchar2(50),                  什么操作
obj_owner   varchar2(50),                  所属用户
object_name varchar2(50),                  操作对象
attempt_dt  date                           发生时间
);
select * from ddl_log_qiang;
SQL> select * from ddl_log_qiang;
OPERATION             OBJ_OWNER             OBJECT_NAME                          ATTEMPT_DT
-------------------------------------------------------------------------- -------------------------------------------------- -----------
DROP                  SINOJFS               TEST1                                2013-6-28 1
CREATE                SINOJFS               TEST1                                2013-6-28 1
ALTER                 SINOJFS               TEST1                                2013-6-28 1
ALTER                 SINOJFS               MV_SINO_PERSON                       2013-6-29 1
ALTER                 SINOJFS               MV_SINO_PERSON_ADDRESS               2013-6-29 1
ALTER                 SINOJFS               MV_SINO_PERSON_EMPLOYMENT            2013-6-29 1
ALTER                 SINOJFS               MV_SINO_PERSON_CERTIFICATION         2013-6-29 1
 

删除DDL触发器
drop trigger tib_ddl_qiang;
创建DDL触发器
create or replace trigger tib_ddl_qiang
before create or drop or alter             在这三个操作之前插入表记录
on schema
declare
oper ddl_log_qiang.operation%type; 
begin
insert into ddl_log_qiang select ora_sysevent,ora_dict_obj_owner,ora_dict_obj_name,sysdate from dual;
end;
/

注:触发器不能调用或者间接调用commit/rollback,触发器中的DML语句会与触发器一起作为一个整体事物,在触发器结束后会自动进行commit。

测试

drop table test1 purge;
create table test1 (x int,y int);
alter table test1 add (z  int); 
select * from ddl_log_qiang;


Leonarding

2013.07.03

北京&summer

分享技术~成就梦想

Blog:

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29362887/viewspace-1062000/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2013-12-03

  • 博文量
    48
  • 访问量
    87058