SqlCeCommand.IndexName Property
Specifica l'indice da aprire.
Spazio dei nomi: System.Data.SqlServerCe
Assembly: System.Data.SqlServerCe (in system.data.sqlserverce.dll)
Sintassi
'Dichiarazione
Public Property IndexName As String
public string IndexName { get; set; }
public:
property String^ IndexName {
String^ get ();
void set (String^ value);
}
/** @property */
public String get_IndexName ()
/** @property */
public void set_IndexName (String value)
public function get IndexName () : String
public function set IndexName (value : String)
Valore proprietà
Nome dell'indice da aprire.
Osservazioni
La proprietà IndexName consente all'oggetto SqlCeDataReader di recuperare righe da una tabella di base secondo l'ordine delle righe nell'indice specificato. In questo modo è possibile recuperare ordinatamente le righe senza utilizzare un'istruzione SELECT. Ad esempio, per recuperare impiegati in base all'identificatore impiegato, è necessario eseguire dal client SELECT * FROM Employees ORDER BY EmployeeID
, ma i risultati possono essere restituiti più rapidamente tramite il recupero di righe in base a un indice mediante la proprietà IndexName. Questa proprietà può essere utilizzata solo su un comando per cui la proprietà CommandType è impostata su TableDirect e la proprietà CommandText è impostata su una tabella di base valida in cui è contenuto l'indice specificato.
Se si recuperano righe da un indice mediante la proprietà IndexName, vengono recuperate tutte le righe da una tabella di base secondo l'ordine dell'indice. Per limitare le righe restituite, utilizzare SetRange; per cercare un valore specifico nell'indice, utilizzare Seek.
Esempio
Nell'esempio che segue viene aperta una tabella di base e viene utilizzato un indice per recuperare rapidamente i valori dall'intervallo specificato.
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();
Affidabilità
Tutti i membri statici pubblici (Shared in Microsoft Visual Basic) di questo tipo sono affidabili. Non è invece garantita l'affidabilità dei membri dell'istanza.
Piattaforme
Piattaforme di sviluppo
Windows Vista, Windows Mobile 5.0, Windows XP Professional with Service Pack 2 (SP2), Windows Server 2003, Windows Mobile 2003 for Pocket PC, Windows CE 5.0
Informazioni sulla versione
.NET Framework e .NET Compact Framework
Supportato in 3.5
.NET Framework
Supportato in 3.0
.NET Compact Framework e .NET Framework
Supportato in 2.0
Vedere anche
Riferimento
SqlCeCommand Class
SqlCeCommand Members
System.Data.SqlServerCe Namespace