当我尝试创建像
这样的视图时create view viewname as select * from table1;
它正在运作。但是当我尝试创建像
这样的视图时Create view view1 as Select * from dba_users;
我无法使用显示权限不足的异常创建它。但是,我能够对给定视图执行选择操作并获得结果。
select * from dba_users;
我是否需要添加任何其他角色才能创建包含dba_users(或任何其他带有dba的表)的视图作为其定义的一部分
答案 0 :(得分:1)
最有可能的问题是,您通过角色访问dba_users
。如果要创建引用dba_users
的视图(或者如果要创建引用dba_users
的定义者权限存储过程),则需要直接授予用户权限不是通过角色。假设您希望能够引用视图和存储过程中的所有数据字典表,您可能希望让DBA直接授予您SELECT ANY DICTIONARY
权限,而不是通过角色。