次の方法で共有


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 までの範囲を設定すると、パフォーマンスが大幅に向上します。

このメソッドを使用するためには、 CommandTypeTableDirect に、有効なテーブル名を CommandText に、指定したベース テーブルの有効なインデックス名を IndexName に、それぞれ設定する必要があります。 SetRange を使用した場合、 ExecuteReader から返される SqlCeDataReader は、指定したインデックス内のキー値が範囲に一致する行だけを返します。

範囲が指定された SqlCeDataReaderSeek を使用した場合、 Seek は、指定した範囲内の行だけを対象とします。 SetRange の詳細については、OLE DB のドキュメントの「IRowsetIndex::SetRange」を参照してください。

必要条件

プラットフォーム: .NET Compact Framework - Windows CE .NET

.NET Framework セキュリティ:

参照

SqlCeCommand クラス | SqlCeCommand メンバ | System.Data.SqlServerCe 名前空間