我有一个过程,出于性能原因,我需要为下游操作缓存一些数据。
定义TYPE
有效
BULK COLLECT INTO
作品_
SELECT
不起作用_
PROCEDURE MYPROC((PARAMS))AS
TYPE REC_TYPE IS RECORD (
COLUMN_1 (TABLEA.COLUMN_A)%TYPE,
COLUMN_2 (TABLEA.COLUMN_B)%TYPE
);
TYPE TAB_TYPE IS TABLE OF REC_TYPE;
TABLE_1 TAB_TYPE;
BEGIN
SELECT COLUMN_A, COLUMN_B
BULK COLLECT INTO TABLE_1
FROM TABLE_A;
SELECT * FROM TABLE_1;
END MYPROC;
产量:
错误(#,#):PL/SQL:ORA-00942:表或视图不存在
我也尝试将它包装在一个表函数中,就像我在其他地方使用我的单列类型一样,但这也不起作用
SELECT * FROM TABLE(TABLE_1);
错误(#,#):PL/SQL:ORA-22905:无法访问非嵌套表项中的行