SqlCeCommand.SetRange メソッド
メモ : この名前空間、クラス、およびメンバは、.NET Framework Version 1.1 だけでサポートされています。
SqlCeDataReader が読み込む行セットを制限します。
Public Sub SetRange( _
ByVal dbRangeOptions As DbRangeOptions, _ ByVal startData() As Object, _ ByVal endData() As Object _)
[C#]
public void SetRange(DbRangeOptionsdbRangeOptions,object[] startData,object[] endData);
[C++]
public: void SetRange(DbRangeOptionsdbRangeOptions,Object* startData __gc[],Object* endData __gc[]);
[JScript]
public function SetRange(
dbRangeOptions : DbRangeOptions,startData : Object[],endData : Object[]);
パラメータ
- dbRangeOptions
範囲を指定するときに使用するオプション。 - startData
範囲の開始を示すキー値。 - endData
範囲の終了を示すキー値。
例外
例外の種類 | 条件 |
---|---|
InvalidOperationException | IndexName プロパティが設定されていません。 |
解説
このメソッドは、SELECT ステートメントの代わりに使用して、ベース テーブルから行セットをより速く取得することを目的としています。SELECT ステートメントの WHERE 句の代わりに SetRange を使用して、インデックス値に基づいて行セットをすばやく取得できます。たとえば、従業員 ID が 1 から 5 までの従業員を取得する場合、SELECT ステートメントを実行することもできますが、従業員 ID のインデックスに 1 から 5 までの範囲を設定すると、パフォーマンスが大幅に向上します。
このメソッドを使用するためには、 CommandType を TableDirect に、有効なテーブル名を CommandText に、指定したベース テーブルの有効なインデックス名を IndexName に、それぞれ設定する必要があります。 SetRange を使用した場合、 ExecuteReader から返される SqlCeDataReader は、指定したインデックス内のキー値が範囲に一致する行だけを返します。
範囲が指定された SqlCeDataReader で Seek を使用した場合、 Seek は、指定した範囲内の行だけを対象とします。 SetRange の詳細については、OLE DB のドキュメントの「IRowsetIndex::SetRange」を参照してください。
必要条件
プラットフォーム: .NET Compact Framework - Windows CE .NET
.NET Framework セキュリティ:
- 直前の呼び出し元の完全信頼。このメンバは、部分的に信頼されているコードから使用することはできません。詳細の参照先 : 部分信頼コードからのライブラリの使用
参照
SqlCeCommand クラス | SqlCeCommand メンバ | System.Data.SqlServerCe 名前空間