... по крайней мере, я думаю, что это проблема.
Я пишу функцию, которая содержит объявление курсора, который обращается к таблице, где один из столбцов является зарезервированным словом NUMBER (да, я знаю..).Функция обнаружила проблему во время компиляции:
Ошибка (16,10): PL / SQL: ORA-06552: PL / SQL: анализ модуля компиляции прекращен ORA-06553: PLS-488: недопустимое объявление переменной:объект 'NUMBER' должен быть типом или подтипом
Мой код выглядит примерно так:
CURSOR my_cur
IS
SELECT "NUMBER", col2, col3
FROM tb1_x;
Чтобы убедиться, что это проблема, я изменил код на
CURSOR my_cur
IS
SELECT 'NUMBER', 'col2', 'col3'
FROM dual;
и скомпилировано нормально, но, очевидно, это не то, что я хочу.
К сожалению, у меня нет возможности изменить имя столбца (вздох), а для записи
SELECT "NUMBER", col2, col3
FROM tb1_x;
работает нормально при обычном выполнении SQL.
В любом случае, я могу обойти эту проблему?Любая помощь очень ценится!