我有一个模式[A],它有一个包,其中一个函数调用另一个模式的[B]表[tableB]。 当我编译包我得到错误,“表或视图不退出”我googled并发现错误是因为我的包调用另一个模式的表。 后来我发现我必须在被调用的模式[B]中授予特权。在Schema B的包中,我编写了以下代码
程序给予特权 开始 GRAN SELECT on tableB TO A; 端;
我是Oracle新手,我很震惊。
答案 0 :(得分:4)
请按照以下步骤操作:
1)登录架构B
2)运行语句GRANT SELECT ON tableB TO A;
3)在包中确保tableB被引用为B.tableB
4)编译包。
答案 1 :(得分:2)
作为B,您只需要在表格上授予A SELECT
权限。您不需要创建授予权限的过程。您只需在以B。
GRANT
语句
GRANT SELECT ON tableB
TO a