第一、任何用户级对象都不应该建立在system或者sys schema下。 第二、在pl/sql块(过程、函数、包属于命名块)中调用的对象都必须显式授权,通过role授权是无效的。所以解决方案是,用sys登陆,然后执行 grant select on dba_users to MYUSER; MYUSER是你的用户名,不要用system。
system默认好像也可以查询dba_users视图的吧如果你的不行的话就以SYS登陆 进行显示进行授权 grant select on select on dba_users to system;
第二、在pl/sql块(过程、函数、包属于命名块)中调用的对象都必须显式授权,通过role授权是无效的。所以解决方案是,用sys登陆,然后执行
grant select on dba_users to MYUSER;
MYUSER是你的用户名,不要用system。
进行显示进行授权
grant select on select on dba_users to system;