SqlCeCommand.IndexName プロパティ
アセンブリ: System.Data.SqlServerCe (system.data.sqlserverce.dll 内)

Dim instance As SqlCeCommand Dim value As String value = instance.IndexName instance.IndexName = value
/** @property */ public String get_IndexName () /** @property */ public void set_IndexName (String value)
開くインデックスの名前。

IndexName を使用すると、SqlCeDataReader で、指定したインデックスによる行の順序に基づいてベース テーブルから行を取得できます。これにより、SELECT ステートメントを使用せずに、行を順番に取得できます。たとえば、従業員 ID に基づいて従業員を取得する場合、SELECT * FROM Employees ORDER BY EmployeeID を実行することもできますが、IndexName プロパティを使用してインデックスから読み込んだ方が、速く結果が返される可能性があります。このプロパティを使用するためには、コマンドの CommandType を BaseTable に設定し、指定したインデックスを格納している有効なベース テーブルを CommandText に設定する必要があります。
IndexName プロパティを使用してインデックスから行を取得すると、ベース テーブルからすべての行がインデックス順に取得されます。返される行を制限するには SetRange を使用し、インデックス内の特定の値を検索するには Seek を使用します。

ベース テーブルを開き、インデックスを使用して、指定した範囲からすばやく値を取得する例を、次に示します。
Dim cmd As SqlCeCommand = conn.CreateCommand() cmd.CommandType = CommandType.TableDirect ' This is the name of the base table ' cmd.CommandText = "Orders" 'Assume: Index contains three columns [int, datetime, money] ' cmd.IndexName = "SomeIndex" Dim start(2) As Object Dim [end](0) As Object start(0) = 1 start(1) = New SqlDateTime(1996, 1, 1) start(2) = New SqlMoney(10.0) [end](0) = 5 cmd.SetRange(DbRangeOptions.InclusiveStart Or DbRangeOptions.InclusiveEnd, start, [end]) Dim rdr As SqlCeDataReader = cmd.ExecuteReader() rdr.Seek(DbSeekOptions.AfterEqual, 1, New SqlDateTime(1997, 1, 1), New SqlMoney(10.5)) While rdr.Read() ' Read data the usual way ' End While rdr.Close()
SqlCeCommand cmd = conn.CreateCommand(); cmd.CommandType = CommandType.TableDirect; // This is the name of the base table // cmd.CommandText = "Orders"; //Assume: Index contains three columns [int, datetime, money] // cmd.IndexName = "SomeIndex"; object[] start = new object[3]; object[] end = new object[1]; start[0] = 1; start[1] = new SqlDateTime(1996, 1, 1); start[2] = new SqlMoney(10.00); end[0] = 5; cmd.SetRange(DbRangeOptions.InclusiveStart | DbRangeOptions.InclusiveEnd, start, end); SqlCeDataReader rdr = cmd.ExecuteReader(); rdr.Seek(DbSeekOptions.AfterEqual, 1, new SqlDateTime(1997, 1, 1), new SqlMoney(10.50)); while (rdr.Read()) { // Read data the usual way // } rdr.Close();


Windows CE, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows XP Professional x64 Edition, Windows XP SP2
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からSqlCeCommand.IndexName プロパティを検索する場合は、下記のリンクをクリックしてください。

- SqlCeCommand.IndexName プロパティのページへのリンク