- PR -

Resultsetから処理が帰ってきません。

1
投稿者投稿内容
yamada
会議室デビュー日: 2003/10/03
投稿数: 1
投稿日時: 2003-10-03 15:41
はじめまして。yamadaと申します。

現在、Oracle JDBC Driver経由のResultSetにおいて原因不明の現象が起きており、
非常に困っています。
その現象は以下の通りです。


検索を実行するSQLで、context索引の張ってある項目に検索をかける

データを引っ張ってこれません。

結果が格納されているResultSetに対して、
取得したいデータのある行数をabsoluteメソッドで指定して、
getObjectメソッドで値を取得しています。
しかしある行数以上をabsoluteメソッドで指定しようとすると
そこで動きが止まってしまうのです。
absoluteメソッドを使わず、期待の行までnextメソッドで
空回しても同様の現象が起きます。

生成されるSQLをOracleSQLPlusで流すと正常にデータを取得します。
FROM句・WHERE句が同じSELECT COUNT文は正常に動作しています。
また、複数テーブルを検索するためSQLをUNIONで連結した際も正常に動
作します。

いろいろ試してみたのですが、原因が全くつかめません。
特に、UNIONでつなぐと上記現象が発生しないことが不思議なのです
が..。
実行SQL例)
select ID,VALUE,LASTUPDATE,COMMENT
from TEST_TABLE
where contains(VALUE,'KENSAKU') > 0 or
contains(COMMENT,'KENSAKU') > 0

作成したIndexSQL例)
create index COMMENT_INDEX
on TEST_TABLE(COMMENT)
indextype is ctxsys.context;


どんな小さなことでも構いません。
どなたかアドバイスを頂けないでしょうか。


以下が環境です。

Oracle :Oracle9i Enterprise Edition Release
9.0.1.2.0 - 64bit
Oracle起動OS:Solaris8
Java実行OS :Compaq Tru64 UNIX V5.1
JDK :JDK1.4.1
JDBC :Oracle JDBC Driver V9.2.0 ojdbc14.jar


長文で申し訳ありません。

どうぞよろしくお願いいたします。
1

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