1

引数が指定されていない場合に、プロシージャに例外を追加したいと考えています。今、私は使用しています

    when OTHERS then
      dbms_output.put_line('Error Occured');

しかし、私は次のように聞こえるものが欲しいです

    when NO_ARGUMENT then
      dbms_output.put_line('No argument specified');

インターネットで検索しましたが、そのような例外は見つかりませんでした。引数がない場合のエラー コードは 06550 です。その場合、例外を追加する方法はありますか?

4

1 に答える 1

3

ORA-06550エラーは一般的なPL/SQLコンパイルエラーです。キャプチャしようとしている実際のエラーはPLS-00306です。XXXXXXの呼び出しで引数の数またはタイプが間違っています。

このエラーは、呼び出しが行われ、パラメーターがプロシージャーにバインドされたときに発生します。したがって、これは、プロシージャに入る前に発生するため、PL/SQLプロシージャ自体の中で実際にキャプチャすることはできません。

PL / SQLの「スタブ」の詳細なドキュメントを含む完全にドキュメント化されたパッケージ、プロシージャ、および関数は、これが発生する可能性を減らし、この種のエラーを根絶するのに役立ちます。

于 2012-08-13T08:48:54.403 に答える