今天在写存储过程时遇到一个不大不小的问题,pl/sql报:表或者试图不存在,但是问题关键是单独执行sql 四没有问题的,人也很无奈,经查阅资料得知,是DBA权限问题。
因为角色在函数、存储过程、触发器中都是失效的,也就是说,用户从角色继承过来的权限,不能在函数、存储过程、触发器中使用。在函数、存储过程、触发器中,如果要访问其他用户的对象,需要显式地给用户授予访问的权限。
赋予权限的语句 grant select any table to table,这里的select 可以替换成为 insert,delete等