|
2013/10/10(Thu) 10:11:00 編集(投稿者)
■No68305 (SQLは苦手 さん) に返信 > 実行するると、「データベース処理実行エラー」 > 「プロシージャー呼び出しまたは引数が有効ではありません」と言うエラーが出てきます。
エラーメッセージだけ見ると、旧VB(VBA)系のエラーコード 5 と同じものに見えますが、いずれにせよ 「データベース処理実行エラー」という文字列を、.NET のライブラリが送出するとは思えません。
これは生の例外情報ではなく、DB処理をまとめた御社内の共通ライブラリの類で メッセージ加工されたものとお見受けします。
> プロシージャーとあるだけに、PL/SQLのエラーと思いますが解消方法がわかりません
そもそも、PL/SQL 系のエラーであれば、エラーメッセージ中に ORA-06550: 行x、列y PLS-00306: '(プロシージャ名)' の呼出しで、引数の数または型が正しくありません。 ORA-01008: バインドされていない変数があります。 などのように、『XXX-999999』系のエラーコードを伴うハズです。
なのでこのエラーは、Oracle が出している物では無いと思います。
今回のエラーメッセージを再現するだけであれば、たとえば Rename("C:\NUL", "C:\NUL") などでも発生します。もちろん、今回の原因とは異なるでしょうが、上記も一応 ArgumentException 「プロシージャー呼び出しまたは引数が有効ではありません。」 というメッセージを送出させますね。(最後に「。」が付いているという違いはありますが)
何にせよ、例外が発生した箇所を特定するのが先決です。 .NET の例外は、スタックトレースからエラー箇所を追跡できるようになっています。
自社ライブラリ等で、そうした情報を握りつぶしている場合には、握りつぶされる前に ステップ実行等で調べるなり、細かくログをとって特定するなどして、 どの行で、どんなパラメータを渡した時に、そのエラーが発生するのかを特定しましょう。
|