首页 > 数据库 > Oracle > 通过触发器禁止模式对象的DDL操作
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/ ,如需转载,请注明出处,否则将追究法律责任。