当我试图在一个存储过程中使用这个表时,我得到了这个错误。当我执行select * from table时,我得到了结果。但是当我将其放入存储过程(与其他表连接)并进行编译时,我得到错误,Error(269,17):PL/SQL: ORA-00942:表或视图不存在
你知道为什么会发生这种事吗?
发布于 2017-08-31 21:17:35
要在由另一个模式拥有的存储过程中使用一个模式中的表,该过程的模式需要对该表进行直接授权:
grant select on ALPS.CUST_LOOKUP_DTL to myschema;授予模式所具有的角色的权限不够:
grant select on ALPS.CUST_LOOKUP_DTL to some_role;
grant some_role to myschema;在这种情况下,myschema可以从表中进行选择,但是它的过程不能。
发布于 2017-08-31 21:02:08
当您执行存储过程中的内容时会发生什么?您提到了一个连接表-它与select * from table不同。您可能需要通过模式名完全限定表名。
select * from schema.table;
https://stackoverflow.com/questions/45981949
复制相似问题