プライマリ・コンテンツに移動

Oracle® Data Provider for .NET開発者ガイド ODAC 12.2c リリース1 (12.2.0.1) for Microsoft Windows E88311-03 |
| 目次 | 索引

前 | 次 |

# FetchSize

このプロパティは、`OracleDataReader`の内部キャッシュのサイズを指定します。

宣言

    // C#
    public long FetchSize {get; set;}

プロパティ値

`OracleDataReader`が内部キャッシュに使用するメモリーの量(バイト表示)を指定する`long`

例外

`ArgumentException` - 指定した`FetchSize`値は無効です。

備考

デフォルト = `OracleCommand`の`FetchSize`プロパティ値。

`FetchSize`プロパティは、結果セットを戻すコマンドを実行して作成した`OracleDataReader`により、継承されます。`OracleDataReader`オブジェクト上の`FetchSize`プロパティにより、データベース・ラウンドトリップごとの内部キャッシュにフェッチされるデータ量が決定されます。

`RowSize`および`FetchSize`プロパティは、他のスカラー・データ型とは異なる方法でUDTおよび`XMLType`データを処理します。ODP.NETの内部キャッシュにはUDTおよび`XMLType`データへの参照のみが格納されているため、`RowSize`プロパティはUDTおよび`XMLType`データの実際のサイズではなく、参照に必要なメモリー(非常に少量)のみを算定します。その結果、アプリケーションは1回のデータベース・ラウンドトリップで多数のUDTまたは`XMLType`インスタンスをデータベースからフェッチしてしまう可能性があります。これは、UDTおよび`XMLType`データの実際のサイズが`FetchSize`に対するものではなく、デフォルトのキャッシュ・サイズである131072バイトを満たすには非常に多くのUDTおよび`XMLType`参照が必要となるためです。したがって、UDTまたは`XMLType`データをフェッチする際には、フェッチする実際のUDTおよび`XMLType`データの総量ではなく、対象UDTおよび`XMLType`インスタンスの数を制御するよう、`FetchSize`プロパティを適切に構成する必要があります。

注意: LOBおよび`LONG`データ型の場合、選択リストの各LOBのキャッシュによって保持されたメタデータおよび参照情報に加えて、`InitialLOBFetchSize`および`InitialLONGFetchSize`プロパティで指定されたサイズのみが`RowSize`プロパティによって算定されます。

関連項目:

- Oracle.DataAccess.ClientおよびOracle.ManagedDataAccess.Clientのネームスペース

- OracleDataReaderクラス

- OracleDataReaderメンバー

- `OracleDataReader`のRowSize

- `OracleCommand`のExecuteReader()

- `OracleCommand`のRowSize