Oracle-禁止用户对自己的表执行drop,alter操作
在大型项目的数据管理中,数据库的安全隐患非常大,既要允许开发人员能够登陆数据库,查询数据,但是又不能对表进行删除,修改权限。针对这种情况有两种解决方案:1.在sys用户建立触发器,不允许用户删除和修改表。2.建立B用户,给B用户对A用户表的insert,update权限,不给其他权限。这里先说下1的实现:[@more@]CREATE OR REPLACE TRIGGER T_TEST BEFORE DROP OR ALTER ON databaseDECLAREBEGINIF ora_dict_obj_owner = 'TEST' AND ora_sysevent = 'DROP' THENraise_application_error(-20002,'不允许删除对象');ELSIF ora_dict_obj_owne