Я получаю сообщение об ошибке поиска при переходе по массиву. Операция немедленная имеет данные, но цикл forall не дает ошибки поиска данных и не может выполнять итерацию по коллекции.PL/SQL Нет данных, найденных ошибкой в forall loop
Пожалуйста, найдите код ниже. code_arr.FIRST, похоже, имеет некоторые проблемы. В таблице приведены данные, и выполнение sql дает данные в редакторе. Не могли бы вы помочь.
create or replace PACKAGE TEST AS
FUNCTION TEST RETURN NUMBER;
END;
create or replace PACKAGE BODY TEST AS
FUNCTION TEST RETURN NUMBER
IS
TYPE typ_varchar IS TABLE OF VARCHAR2 (1000) INDEX BY BINARY_INTEGER;
lv_statement VARCHAR2 (1000);
code_arr typ_varchar;
var1 varchar(1000);
BEGIN
lv_statement := 'SELECT lnm.code FROM employee lnm';
EXECUTE IMMEDIATE lv_statement BULK COLLECT
INTO code_arr;
FORALL ix1 IN code_arr.FIRST .. code_arr.LAST SAVE EXCEPTIONS
SELECT code_arr(ix1) into var1 FROM DUAL;
RETURN 1;
END;
END;
Заранее за вашу помощь.
Мэтью
Большое спасибо – user3053015