web-dev-qa-db-ja.com

PLS-00306エラー:間違った引数を見つける方法は?

PLS-00306: 'string'の呼び出しにおける引数の数またはタイプが間違っています

原因:このエラーは、名前付きサブプログラムの呼び出しがそのサブプログラム名の宣言と一致しない場合に発生します。サブプログラム名のスペルが間違っているか、パラメータのデータ型が間違っているか、宣言に誤りがあるか、宣言がブロック構造に正しく配置されていない可能性があります。たとえば、このエラーは、組み込み平方根関数SQRTが、スペルの間違った名前または間違ったデータ型のパラメーターで呼び出された場合に発生します。

処置:サブプログラム名の綴りと宣言を確認してください。また、呼び出しが正しいこと、パラメータが正しいデータ型であること、組み込み関数でない場合は、宣言がブロック構造に正しく配置されていることを確認してください。

どうすれば間違った引数をすばやく特定できますか?

何十ものパラメータを持つストアドプロシージャがあります。使用された手順と定義された手順の違いを確認する簡単な方法はありますか?行ごとにチェックしたくない。

11

いいえ、ここにはショートカットはありません。次の順序で確認してください。

  1. プロシージャ名を確認してください。
  2. パラメータ数を確認してください。
  3. パラメータの種類を確認してください。
  4. パラメータ名を確認してください。
11
Leigh Riffel