Hitachi

Hitachi Advanced Data Binder AP開発ガイド


8.4.37 setFetchSize(int rows)

〈この項の構成〉

(1) 機能

このStatementオブジェクトから生成されるResultSetオブジェクトの,デフォルトのフェッチサイズ(HADBサーバからHADBクライアントに検索結果を一括転送する行数)を設定します。

(2) 形式

public synchronized void setFetchSize(int rows) throws SQLException

(3) 引数

int rows

一括転送する行数を0〜65,535の範囲で指定します。

1以上の値を指定した場合,指定値に従って複数の行データをHADBサーバからHADBクライアントに一括転送します。

0を指定した場合,またはこのメソッドを実行しない場合は,システムプロパティ,ユーザプロパティ,または接続用のURLのプロパティのadb_clt_fetch_sizeの値が適用されます。

setFetchSizeメソッドの設定値とプロパティのadb_clt_fetch_sizeの設定値の関係を次の表に示します。

表8‒16 setFetchSizeメソッドの設定値とプロパティのadb_clt_fetch_sizeの設定値の関係

setFetchSizeメソッドの設定値(m)

プロパティのadb_clt_fetch_sizeの設定値(n)

一括転送される行数

0

1≦n≦65,535

n

指定なし

1

1≦m≦65,535

1≦n≦65,535

m

指定なし

m

(4) 戻り値

なし。

(5) 発生する例外

次に示す場合にSQLExceptionが投入されます。

(6) 留意事項

HADBサーバに対して一度の通信で要求する行数は,次の表に示す優先順位に従って決定されます。

表8‒17 HADBサーバに対して一度の通信で要求する行数の優先順位

優先順位

HADBサーバに対して一度の通信で要求する行数

1

ResultSetクラスのsetFetchSizeメソッドの引数で指定した値

2

StatementクラスのsetFetchSizeメソッドの引数で指定した値

3

システムプロパティadb_clt_fetch_sizeで設定した値

4

DriverManagerクラスのgetConnectionメソッドの引数infoに指定したadb_clt_fetch_sizeプロパティの値

5

DriverManagerクラスのgetConnectionメソッドの引数urlに指定したadb_clt_fetch_sizeの値

なお,検索結果の行数が上記の表に示す転送行数より多い場合,検索が終了するまで(またはAPからの検索要求がなくなるまで),HADBサーバに対して転送を要求します。