Я создаю хранимую процедуру, в которой я обновляю таблицу, используя оператор CASE
. user_in - это входной параметр хранимой процедуры.
Вот оператор UPDATE
:
update tbl
set col1 = CASE WHEN (user_in = txt.col3) THEN 'ABC'
ELSE 'XYZ'
END
where col2 = v_col2;
Где user_in
и v_col2
- входные параметры, txt
- другая таблица, в которой мы сопоставляем значение *Значение от 1013 * до user_in
.Если они совпадают, тогда установите col1
из tbl
в ABC
, в противном случае установите XYZ
.
При выполнении хранимой процедуры я получаю ошибку:
ORA-00904 неверный идентификатор
Как решить эту проблему, чтобы я мог легко обновить таблицу и хранимая процедура успешно скомпилируется.Спасибо