• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:javaでのストアド呼び出し)

javaでのストアド呼び出しについての質問

このQ&Aのポイント
  • javaでストアド呼び出しを行いたい場合、戻り値を返すストアドを呼び出すことができます。具体的には、呼び出すストアドのSQL文を作成し、CallableStatementクラスを使用して実行します。また、プレースホルダーを使用してストアドの引数を設定することも可能です。
  • 上記のような処理を行いながらも、エラーが発生する場合があります。エラーが発生する要因はいくつか考えられますが、一つの要因として、registerOutParameterメソッドで指定する型が不正な場合があります。具体的には、PL/SQLのNUMBER型を表すjava.sql.Types.INTEGERではなく、適切な型を指定する必要があります。
  • Javaでのストアド呼び出しについて困っている場合、周囲にJavaの知識がある人がいないことが一つの問題です。しかし、オンライン上で情報を検索したり、質問サイトに質問を投稿することで解決策を見つけることも可能です。また、開発コミュニティやSNSを活用して、Javaのエキスパートに助言を求めることもできます。

質問者が選んだベストアンサー

  • ベストアンサー
  • ct27
  • ベストアンサー率62% (48/77)
回答No.1

すでに解決済みでしたら申し訳ありません。 >ストアド自体の引数は第1引数から第5引数までが IN で6番目がoutです。 とご自分でおっしゃっているにもかかわらず、 >cstmt .registerOutParameter( 1, java.sql.Types.INTEGER ); これが"1"なのはどうしてでしょう?6番目の引数がinなら cstmt .registerOutParameter( 6, java.sql.Types.INTEGER ); なはずですよね? 余談ですが、「エラーになってしまいます」だけだとなんのエラーなのか わからないので、出力されたトレースなんかをはっていただけるとスムーズに 解決できると思いますよ。

noname#117597
質問者

お礼

ありがとうございます。 たしかにそうですよね! しかし、今日は事情がありJavaの作業が出来なかったのでまだ試していません。 この方法で試してみたいと思います。 また何かあったらよろしくお願いします

その他の回答 (1)

  • ct27
  • ベストアンサー率62% (48/77)
回答No.2

No.1について誤字があったので訂正です。すみません。 >これが"1"なのはどうしてでしょう?6番目の引数がinなら "inなら"じゃなくて"outなら"の間違いですごめんなさい<(_ _)>

noname#117597
質問者

お礼

その通りにやってみたら出来ました! ありがとうございました!

関連するQ&A

専門家に質問してみよう