ITPub博客

首页 > 数据库 > Oracle > 通过触发器禁止模式对象的DDL操作

通过触发器禁止模式对象的DDL操作

原创 Oracle 作者:llnnmc 时间:2017-05-11 16:10:12 0 删除 编辑

create or replace trigger rmes.tri_ddl_deny

  before create or alter or drop or truncate on database

-- 禁用对RMES模式的DDL操作

 

declare

  my_errnum number := -20001;

  my_errmsg varchar2(100) := 'You have no permission to this operation.';

begin

  if ora_dict_obj_owner = 'RMES' then

    if ora_sysevent in ('CREATE', 'ALTER', 'DROP', 'TRUNCATE') then

      raise_application_error(my_errnum,

                              ora_dict_obj_owner || '.' ||

                              ora_dict_obj_name || ' ' || my_errmsg);

    end if;

  end if;

exception

  when no_data_found then

    null;

end;

/

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

下一篇: Oracle闪回查询
请登录后发表评论 登录
全部评论
刘鲁宁的个人博客。

注册时间:2016-12-29

  • 博文量
    113
  • 访问量
    287700