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


11

PLS-00306: 'string'へのコールで引数の数またはタイプが間違っています

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

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

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

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

回答:


11

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

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

4
名前で呼び出す場合は、パラメーター名も確認してください。それはちょうど私を見つけました。
swref 2017年

パラメータの名前を確認することが私の鍵です。
Arpit Aggarwal

それはオブジェクトタイプである可能性があります
Arthur
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.