У меня есть таблица, у которой есть column_id типа varchar2. Эта таблица может содержать 1, 0 или несколько строк. Моя бизнес-логика зависит от каждого случая.
Я пытаюсь извлечь столбец в массив, но получаю странную ошибку (учитывая мои ограниченные знания pl / sql)
TYPE t_col_id IS TABLE OF TEST_TABLE.COLUMN_ID%TYPE INDEX BY BINARY_INTEGER;
AR_COL_ID T_COL_ID;
Затем я пытаюсь извлечь данные в этот массив
SELECT COLUMN_ID INTO AR_SIM_ID FROM TEST_TABLE WHERE COLUMN_ID = 1;
и я получаю эту ошибку
Error(7,3): PL/SQL: SQL Statement ignored
Error(7,25): PLS-00597: expression 'AR_SIM_ID' in the INTO list is of wrong type
Error(7,35): PL/SQL: ORA-00904: : invalid identifier
Есть что-то, чего мне не хватает? Мой оригинальный код будет использовать этот массив как
BEGIN
-- FETCH ARRAY QUERY
IF (AR_SIM_ID.LENGTH = 0) THEN
-- BUSINESS LOGIC 1
ELSE
-- BUSINESS LOGIC 2
EXCEPTION
WHEN NO_DATA_FOUND THEN
-- BUSINESS LOGIC 3
END;