[pgsql-jp: 35390] Re: JDBC FetchSizeの指定が効きません【解決】

井口 隆 iguchi.takashi @ sorun.co.jp
2005年 5月 17日 (火) 15:21:13 JST


藤沢様

ご回答ありがとうございます。


> 以下は先日 本田さんに翻訳していただいたマニュアルの一部ですが「カーソルに
基
> づいた結果の入手」
> の項の注意に何点か注意すべき点が上げられています。
>
http://www.postgresql.jp/wg/jpugdoc/jdbc/jdbc-8.1dev-400/html/query.html#que
> ry-with-cursor
>
上記注意事項について7.4のJDBCドライバで試してみたところ、2項目目の
>Connectionが自動コミットモードではいけません。
に該当しており、ConnectionにsetAutoCommit(false)を指定したところFetchSizeに
合った
動作になりました。
今回の箇所は参照のみ行うところだったのでAutoCommitは意識していませんでした。

尚、3項目目の
>StatementがResultSet.TYPE_FORWARD_ONLYという種類のResultSet で生成されなけ
ればなりません。
について調べたところ、7.4のJDBCドライバではConnection#createStatement()で何
を指定しても
デフォルト(引数なし)の場合を含めexecuteQuery()で取得したResuleSetのtyp
eは、
TYPE_SCROLL_INSENSITIVEでしたが、AutoCommitの設定でFetchSizeが効くようになり
ました。

ありがとうございました。




pgsql-jp メーリングリストの案内