【发布时间】:2018-09-05 19:43:58
【问题描述】:
我尝试从嵌套表中选择值并批量收集到关联数组集合中。当我尝试批量收集 oracle 时抛出上述异常(PL/SQL:SQL 语句被忽略 PL/SQL: ORA-22905: 无法访问非嵌套表中的行 item) 虽然我从嵌套表中获取数据。
并非在所有情况下都会发生。当同一个包在不同的客户端数据库中编译时,某些情况下它不会抛出错误,而在某些环境中,它会抛出错误。你能帮忙解决一下具体的问题吗?
我没有附上整个包裹。而是提供发生问题的案例。
DECLARE
TYPE rc_rec_multiset IS record (
rc_id NUMBER,
doc_num VARCHAR2(100)
);
TYPE rc_type IS TABLE OF rc_rec_multiset;
TYPE tab_rec_type_multiset IS
TABLE OF rc_rec_multiset INDEX BY pls_integer;
rc_tab_type rc_type := rc_type() ;
rc_tab_type_dist_rc tab_rec_type_multiset;
BEGIN
SELECT DISTINCT rc_id,
doc_num BULK COLLECT
INTO rc_tab_type_dist_rc
FROM TABLE(rc_tab_type);
END;
【问题讨论】: