在非sys,system用户的存储过程中,查询v$开头的视图,如v$mystat,v$statname等。这些视图查询是需要在sys下显示授权后才能在存储过程中使用。
但是,如果我们使用grant on v$view to username,则会收到ORA-02030错误。
如下所示:
SQL> grant select on v$mystat to scott;
grant select on v$mystat to scott
ORA-02030: 只能从固定的表/视图查询
这是因为v$mystat不是一个视图,其实它是一个同义词。
因此,需要将同义词对应的视图进行授权。
SQL> grant select on v_$mystat to scott;
Grant succeeded
小技巧,你也可以试试看。
本文介绍如何在非sys用户存储过程中查询v$开头的视图,如v$mystat、v$statname等,以及解决授权时遇到的ORA-02030错误。通过使用正确的语法granto_v_viewtousername,可以成功授权并使用这些敏感视图。
5560

被折叠的 条评论
为什么被折叠?



