我在架构A 中有表格。我在架构B 的包中创建了一个程序,用于从架构A中的表中查询数据,如下所示:
PROCEDURE GET_DATAFROM_A (....)
AS BEGIN
execute immediate ' GRANT SELECT ON '||A||'.'||tblname||' TO B';
open PO_Cursor for 'select * from '||A||'.'||tblname;
但是当我执行它显示的程序时
ORA-00942:表或视图不存在
我有什么不对吗?
答案 0 :(得分:0)
如果您作为架构B进行连接,则不能只说“#34;授予自己访问架构A中的表格的权限。”#34;
您正在获取mouseup
,因为现在您还没有桌面权限,所以这笔资金说的是#34;我甚至不知道你在哪个桌子上谈论。"
但即使SchemaB可以看到该表,Oracle也会告知您:
ORA-00942
您需要其他用户(如SchemaA)将表格所需的权限授予SchemaB。