Oracle:使用管理员帐户创建跨模式的视图

时间:2014-06-13 15:50:19

标签: oracle views privileges grant

我想使用SCHEMA_B中表LICENSE中的列在SCHEMA_A中创建一个视图。

create view SCHEMA_B.V_TEST as
SELECT  LICENSE_NUMBER  FROM     SCHEMA_A.LICENSE L

然后

select * from  SCHEMA_B.V_TEST

这给了我" ORA-01031:权限不足"当我尝试从视图中选择管理员帐户时。 (编辑:管理员帐户具有SELECT ANY TABLE权限。)我缺少什么?

有一个类似的问题,但解决方案与一个用户授予另一个选择权有关。既然我是管理员,我应该对两个模式都有选择权限吗?但是,我尝试将行" GRANT SELECT ON SCHEMA_A.LICENSE添加到admin_account WITH GRANT OPTION"并得到同样的错误。

1 个答案:

答案 0 :(得分:1)

我认为视图的创建失败了,因为schema_b没有schema_a.licence的select权限。由于您在schema_b中创建了一个对象,因此schema_b必须具有必要的权限。

授予它:

as schema_a(或DBA - “admin account”)

grant select on schema_a.licence to schema_b

然后您应该能够创建视图,然后从中进行选择。