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
のRowSize -
OracleCommand
のExecuteReader() -
OracleCommand
のRowSize