いくつかのアプリケーションで使用される次の手順があります。
procedure p1
is
begin
bla bla bla;
end;
しかし、例外処理ブロックはありません。そのため、アプリケーションはこの機能に従って作成されました。
ここで、p1 にエラーを記録する必要があります。ただし、この手順を使用するアプリケーションには影響しないはずです。
このようなもの:
procedure p1
is
begin
bla bla bla;
exception when others then
log_error(sqlcode, sqlerrm);
raise_new_exception (sqlcode, sqlerrm);
end;
の場合にはアプリケーションエラーを発生させる最初のパラメータは [-20000, -20999] の範囲内である必要があります。したがって、例外 no_data_found が発生した場合、このエラーは発生しません。
の場合には例外初期化2 番目のパラメータは変数であってはなりません。数値リテラルである必要があります。
PS: 一時的な解決策として、私はすぐに実行する
ベストアンサー1
エラーが変わらない場合は、次のように変更します。
...
exception when others then
log_error(sqlcode, sqlerrm);
raise;
end;
/
これは説明されているドキュメント内。