- PR -

関数のシーケンス・エラー

1
投稿者投稿内容
lepin
会議室デビュー日: 2004/12/24
投稿数: 7
投稿日時: 2005-04-01 16:46
お世話になります。

早速質問なのですが、
DBからデータを取得し取り出す時に、

SystemErr R COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver] CLI0125E 関数のシーケンス・エラーです。 SQLSTATE=HY010

というエラーが発生します。
まったく原因がわからず困っております。
どなたか心当たりのある方がいたら、ご教授の程よろしくお願いいたします。

開発環境 : Windows XP
         WebSphere5.1
         DB2

while (rs.next()) {
   createList.setNext();
       for (int i = 0; i < clumn.length; i++) {
        if (clumn[i].equals("hoge")) {
          hoge= rs.getString(clumn[i]);
          createList.addMap(clumn[i], cartID);
        } else if (clumn[i].equals("hoge2")) {
          createList.addMap(clumn[i], rs.getDate(clumn[i]));
        } else if (clumn[i].equals("hoge3")) {
          stmt2.setString(1, hoge1);
          ResultSet rs2 = stmt2.executeQuery();
          if (rs2.next()) {
            createList.addMap(clumn[i], "order");
          } else {
            //この処理のときにエラーが発生します。
            createList.addMap(clumn[i], rs.getString(clumn[i]));
          }
        } else {
          createList.addMap(clumn[i], rs.getString(clumn[i]));
        }
      }
 }
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2005-04-01 17:00
DB2はまったく疎いのですが、Google で "関数のシーケンス・エラーです" としらべたらマニュアルっぽいのにあたりました。
http://www.db2.jp/db2manual/ja_JP/index.htm?openup=ad/r0000646.htm

マニュアルを見ても意味がわからないのであればサポート窓口に問い合わせてみてはいかがでしょうか。

[ メッセージ編集済み 編集者: インギ 編集日時 2005-04-01 17:01 ]
lepin
会議室デビュー日: 2004/12/24
投稿数: 7
投稿日時: 2005-04-04 13:10
インギさん
ご返答ありがとうございます。

無事解決することができました。

WAS+DB2固有の問題なのか、
http://www.developer.ibm.com/ja/tech/faq/individual?oid=2:28069

2:コーディング上の問題
自動コミットの状態で、同じ接続に対して、executeQueryを二回実行し、
二回目のexecuteQueryを実行後に一回目のexecuteQueryで取得した結果セットを使用するとこの例外が発生します。
これを回避するようにコーディングしてください。

とあったので、自動コミットを off にしたところ問題なく動きました。
この問題は、常に発生するわけではないようです。
1

スキルアップ/キャリアアップ(JOB@IT)