Ошибка Oracle: значения параметров хранимой процедуры не объявлены - PullRequest
0 голосов
/ 25 апреля 2018

Ниже приведен фрагмент кода процедуры:

PRC_UPDATE

BEGIN

UPDATE EMP E SET E.NAME = 'X' WHERE E.E_ID = 'Y';

COMMIT;

EXCEPTION WHEN OTHERS 

ROLLBACK;

PRC_ERROR_LOG(E.E_ID,sqlcode,sqlerrm);

RAISE;

END PRC_UPDATE;

У меня есть процедура, которая обновляет значения в таблице. Я определил процедуру регистрации ошибок (PRC_ERROR_LOG), чтобы вставить ошибки в журнал ошибокTable.But, при вызове PRC_ERROR_LOG он выдает ошибку как "identifier 'E_ID' must be declared". Не распознает ли значение строки, в котором выбрасывается ошибка.

В основном мое требование состоит в том, чтобы вставить ошибку и строку, в которойконкретная ошибка фиксируется в таблице ошибок. Как я могу отправить конкретное значение строки в процедуре регистрации ошибок?

Заранее спасибо

1 Ответ

0 голосов
/ 25 апреля 2018

Вам следует изучить использование курсора, причина этой ошибки в том, что вы уже выполнили оператор обновления, а e.e_id теперь находится вне области видимости. Вы также можете использовать try-catch для этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...