Condividi tramite


Classe SqlCeResultSet

Un cursore aggiornabile, scorrevole e associabile.

Gerarchia di ereditarietà

System.Object
  System.MarshalByRefObject
    System.Data.Common.DbDataReader
      System.Data.SqlServerCe.SqlCeDataReader
        System.Data.SqlServerCe.SqlCeResultSet

Spazio dei nomi  System.Data.SqlServerCe
Assembly:  System.Data.SqlServerCe (in System.Data.SqlServerCe.dll)

Sintassi

'Dichiarazione
Public Class SqlCeResultSet _
    Inherits SqlCeDataReader _
    Implements IEnumerable, IListSource
'Utilizzo
Dim instance As SqlCeResultSet
public class SqlCeResultSet : SqlCeDataReader, 
    IEnumerable, IListSource
public ref class SqlCeResultSet : public SqlCeDataReader, 
    IEnumerable, IListSource
type SqlCeResultSet =  
    class
        inherit SqlCeDataReader
        interface IEnumerable
        interface IListSource
    end
public class SqlCeResultSet extends SqlCeDataReader implements IEnumerable, IListSource

Nel tipo SqlCeResultSet sono esposti i membri seguenti.

Costruttori

  Nome Descrizione
Metodo protetto SqlCeResultSet Criticità per la sicurezza. Non utilizzare. Per creare un oggetto SqlCeResultSet, è necessario chiamare il metodo ExecuteResultSet(ResultSetOptions) della classe SqlCeCommand.

In alto

Proprietà

  Nome Descrizione
Proprietà protetta ContainsListCollection Infrastruttura.
Proprietà pubblica Depth Ottiene un valore che indica il livello di nidificazione della riga corrente. (ereditato da SqlCeDataReader)
Proprietà pubblica FieldCount Ottiene il numero di colonne nella clausola SELECT della query. (ereditato da SqlCeDataReader)
Proprietà pubblica HasRows Ottiene un valore che indica se l'oggetto SqlCeDataReader contiene una o più righe. (ereditato da SqlCeDataReader)
Proprietà pubblica HiddenFieldCount Infrastruttura. (ereditato da SqlCeDataReader)
Proprietà pubblica IsClosed Indica se il visualizzatore di dati è chiuso. (ereditato da SqlCeDataReader)
Proprietà pubblica Item[Int32] Si utilizza come indicizzatore per l'oggetto SqlCeResultSet. Esegue l'override di SqlCeDataReader.Item[Int32].
Proprietà pubblica Item[String] Si utilizza come indicizzatore per l'oggetto SqlCeResultSet. Esegue l'override di SqlCeDataReader.Item[String].
Proprietà pubblica RecordsAffected Ottiene il numero di righe modificate, inserite o eliminate dall'esecuzione dell'istruzione SQL. (ereditato da SqlCeDataReader)
Proprietà pubblica ResultSetView Utilizzato per associare i dati di un SqlCeResultSet a un controllo.
Proprietà pubblica Scrollable Determina se il SqlCeResultSet è scorrevole.
Proprietà pubblica Sensitivity Determina la sensibilità del SqlCeResultSet.
Proprietà pubblica Updatable Determina se i valori all'interno del SqlCeResultSet possono essere modificati.
Proprietà pubblica VisibleFieldCount (ereditato da DbDataReader)

In alto

Metodi

  Nome Descrizione
Metodo pubblico Close Chiude l'oggetto SqlCeDataReader. (ereditato da SqlCeDataReader)
Metodo pubblico CreateObjRef (ereditato da MarshalByRefObject)
Metodo pubblico CreateRecord Crea una nuova riga sul server e restituisce un oggetto SqlCeUpdatableRecord.
Metodo pubblico Delete Elimina il record corrente dall'origine dati sul server.
Metodo pubblico Dispose() Infrastruttura. Rilascia le risorse utilizzate da questo oggetto SqlCeDataReader. (ereditato da SqlCeDataReader)
Metodo protetto Dispose(Boolean) Rilascia le risorse non gestite utilizzate da questo oggetto SqlCeDataReader e, facoltativamente, anche le risorse gestite. (ereditato da SqlCeDataReader)
Metodo pubblico Equals (ereditato da Object)
Metodo protetto Finalize Rilascia risorse non gestite ed esegue altre operazioni di pulizia prima che l'oggetto SqlCeDataReader sia recuperato dalla procedura di Garbage Collection. (ereditato da SqlCeDataReader)
Metodo pubblico GetBoolean Restituisce il valore della colonna in corrispondenza dell'indice specificato sotto forma di valore booleano. Esegue l'override di SqlCeDataReader.GetBoolean(Int32).
Metodo pubblico GetByte Restituisce il valore della colonna in corrispondenza dell'indice specificato sotto forma di byte. Esegue l'override di SqlCeDataReader.GetByte(Int32).
Metodo pubblico GetBytes Copia una lunghezza di byte nel buffer, a partire dalla posizione indicata nel campo specificato. Esegue l'override di SqlCeDataReader.GetBytes(Int32, Int64, array<Byte[], Int32, Int32).
Metodo pubblico GetChar Non supportato nel provider di dati .NET Compact Framework per SQL Server Compact. (ereditato da SqlCeDataReader)
Metodo pubblico GetChars Copia una lunghezza di caratteri nel buffer, a partire dalla posizione indicata nel campo specificato. Esegue l'override di SqlCeDataReader.GetChars(Int32, Int64, array<Char[], Int32, Int32).
Metodo pubblico GetData (ereditato da DbDataReader)
Metodo pubblico GetDataTypeName Ottiene il nome del tipo di dati di origine. (ereditato da SqlCeDataReader)
Metodo pubblico GetDateTime Restituisce il valore della colonna in corrispondenza dell'indice specificato come valore DateTime. Esegue l'override di SqlCeDataReader.GetDateTime(Int32).
Metodo protetto GetDbDataReader (ereditato da DbDataReader)
Metodo pubblico GetDecimal Restituisce il valore della colonna in corrispondenza dell'indice specificato come valore Double. Esegue l'override di SqlCeDataReader.GetDecimal(Int32).
Metodo pubblico GetDouble Restituisce il valore della colonna in corrispondenza dell'indice specificato come valore Double. Esegue l'override di SqlCeDataReader.GetDouble(Int32).
Metodo pubblico GetEnumerator Restituisce un'interfaccia IEnumerator che può essere utilizzata per scorrere le righe nel visualizzatore di dati. Esegue l'override di SqlCeDataReader.GetEnumerator().
Metodo pubblico GetFieldType Ottiene l'oggetto Type che rappresenta il tipo di dati dell'oggetto. (ereditato da SqlCeDataReader)
Metodo pubblico GetFloat Restituisce il valore della colonna in corrispondenza dell'indice specificato come valore Float. Esegue l'override di SqlCeDataReader.GetFloat(Int32).
Metodo pubblico GetGuid Restituisce il valore della colonna in corrispondenza dell'indice specificato come valore GUID. Esegue l'override di SqlCeDataReader.GetGuid(Int32).
Metodo pubblico GetHashCode (ereditato da Object)
Metodo pubblico GetInt16 Restituisce il valore della colonna in corrispondenza dell'indice specificato come valore Int16. Esegue l'override di SqlCeDataReader.GetInt16(Int32).
Metodo pubblico GetInt32 Restituisce il valore della colonna in corrispondenza dell'indice specificato come valore Int32. Esegue l'override di SqlCeDataReader.GetInt32(Int32).
Metodo pubblico GetInt64 Restituisce il valore della colonna in corrispondenza dell'indice specificato come valore Int64. Esegue l'override di SqlCeDataReader.GetInt64(Int32).
Metodo pubblico GetLifetimeService (ereditato da MarshalByRefObject)
Metodo protetto GetList Restituisce un'istanza di ResultSetView.
Metodo pubblico GetName Ottiene il nome della colonna specificata. (ereditato da SqlCeDataReader)
Metodo pubblico GetOrdinal Ottiene l'ordinale di colonna, in base al nome della colonna. (ereditato da SqlCeDataReader)
Metodo pubblico GetProviderSpecificFieldType Ottiene un oggetto Object che consiste in una rappresentazione del tipo di campo specifico del provider sottostante. (ereditato da SqlCeDataReader)
Metodo pubblico GetProviderSpecificValue (ereditato da DbDataReader)
Metodo pubblico GetProviderSpecificValues (ereditato da DbDataReader)
Metodo pubblico GetSchemaTable Restituisce una classe DataTable che descrive i metadati della colonna della classe SqlCeDataReader. (ereditato da SqlCeDataReader)
Metodo pubblico GetSqlBinary Restituisce il valore della colonna in corrispondenza dell'indice specificato come tipo SqlBinary. Esegue l'override di SqlCeDataReader.GetSqlBinary(Int32).
Metodo pubblico GetSqlBoolean Restituisce il valore della colonna in corrispondenza dell'indice specificato come tipo SqlBoolean. Esegue l'override di SqlCeDataReader.GetSqlBoolean(Int32).
Metodo pubblico GetSqlByte Restituisce il valore della colonna in corrispondenza dell'indice specificato come tipo SqlByte. Esegue l'override di SqlCeDataReader.GetSqlByte(Int32).
Metodo pubblico GetSqlDateTime Restituisce il valore della colonna in corrispondenza dell'indice specificato come tipo SqlDateTime. Esegue l'override di SqlCeDataReader.GetSqlDateTime(Int32).
Metodo pubblico GetSqlDecimal Restituisce il valore della colonna in corrispondenza dell'indice specificato come tipo SqlDecimal. Esegue l'override di SqlCeDataReader.GetSqlDecimal(Int32).
Metodo pubblico GetSqlDouble Restituisce il valore della colonna in corrispondenza dell'indice specificato come tipo SqlDouble. Esegue l'override di SqlCeDataReader.GetSqlDouble(Int32).
Metodo pubblico GetSqlGuid Restituisce il valore della colonna in corrispondenza dell'indice specificato come tipo SqlGuid. Esegue l'override di SqlCeDataReader.GetSqlGuid(Int32).
Metodo pubblico GetSqlInt16 Restituisce il valore della colonna in corrispondenza dell'indice specificato come tipo SqlInt16. Esegue l'override di SqlCeDataReader.GetSqlInt16(Int32).
Metodo pubblico GetSqlInt32 Restituisce il valore della colonna in corrispondenza dell'indice specificato come tipo SqlInt32. Esegue l'override di SqlCeDataReader.GetSqlInt32(Int32).
Metodo pubblico GetSqlInt64 Restituisce il valore della colonna in corrispondenza dell'indice specificato come tipo SqlInt64. Esegue l'override di SqlCeDataReader.GetSqlInt64(Int32).
Metodo pubblico GetSqlMetaData Restituisce le informazioni sui metadati associate alla colonna specificata.
Metodo pubblico GetSqlMoney Restituisce il valore della colonna in corrispondenza dell'indice specificato come tipo SqlMoney. Esegue l'override di SqlCeDataReader.GetSqlMoney(Int32).
Metodo pubblico GetSqlSingle Restituisce il valore della colonna in corrispondenza dell'indice specificato come tipo SqlSingle. Esegue l'override di SqlCeDataReader.GetSqlSingle(Int32).
Metodo pubblico GetSqlString Restituisce il valore della colonna in corrispondenza dell'indice specificato come tipo SqlString. Esegue l'override di SqlCeDataReader.GetSqlString(Int32).
Metodo pubblico GetString Restituisce il valore della colonna in corrispondenza dell'indice specificato come tipo String. Esegue l'override di SqlCeDataReader.GetString(Int32).
Metodo pubblico GetType (ereditato da Object)
Metodo pubblico GetValue Restituisce il valore del campo specificato. Esegue l'override di SqlCeDataReader.GetValue(Int32).
Metodo pubblico GetValues Recupera una matrice di tutti i campi per il record specificato. Esegue l'override di SqlCeDataReader.GetValues(array<Object[]).
Metodo pubblico InitializeLifetimeService (ereditato da MarshalByRefObject)
Metodo pubblico Insert(SqlCeUpdatableRecord) Inserisce l'oggetto SqlCeUpdatableRecord specificato nel set di righe sottostante.
Metodo pubblico Insert(SqlCeUpdatableRecord, DbInsertOptions) Inserisce l'oggetto SqlCeUpdatableRecord specificato nel set di righe sottostante e specifica il posizionamento del cursore.
Metodo protetto IsCommandBehavior Determina se l'oggetto CommandBehavior specificato corrisponde a quello di questo oggetto SqlCeDataReader. (ereditato da SqlCeDataReader)
Metodo pubblico IsDBNull Determina se il campo in corrispondenza della posizione ordinale specificata è Null. Esegue l'override di SqlCeDataReader.IsDBNull(Int32).
Metodo pubblico IsSetAsDefault Determina se il campo in corrispondenza della posizione ordinale specificata è contrassegnato per l'utilizzo del valore predefinito sottostante.
Metodo protetto MemberwiseClone() (ereditato da Object)
Metodo protetto MemberwiseClone(Boolean) (ereditato da MarshalByRefObject)
Metodo pubblico NextResult Non supportato nel provider di dati .NET Compact Framework per SQL Server Compact. (ereditato da SqlCeDataReader)
Metodo protetto OnMove Infrastruttura. Esegue l'override di SqlCeDataReader.OnMove().
Metodo pubblico Read Sposta l'oggetto SqlCeDataReader al record successivo. (ereditato da SqlCeDataReader)
Metodo pubblico ReadAbsolute Sposta il lettore su un record specifico nell'oggetto ResultSet.
Metodo pubblico ReadFirst Posiziona il reader sul primo record dell'oggetto ResultSet.
Metodo pubblico ReadLast Posiziona il reader sull'ultimo record dell'oggetto ResultSet.
Metodo pubblico ReadPrevious Posiziona il visualizzatore sul record precedente al record corrente.
Metodo pubblico ReadRelative Sposta il lettore del numero specificato di posizioni da quella corrente.
Metodo pubblico Seek Posiziona l'oggetto SqlCeDataReader sul record con valori indicizzati corrispondenti ai parametri specificati. (ereditato da SqlCeDataReader)
Metodo pubblico SetBoolean Imposta il valore della colonna specificata sul valore booleano passato.
Metodo pubblico SetByte Imposta il valore della colonna specificata sul valore Byte passato.
Metodo pubblico SetBytes Copia una lunghezza di byte dal buffer indicato nella colonna specificata, a partire dalla posizione specificata in quel campo.
Metodo pubblico SetChar Imposta il valore della colonna specificata sul valore Char passato.
Metodo pubblico SetChars Copia una lunghezza di caratteri dal buffer specificato nella colonna specificata, a partire dalla posizione specificata in quel campo.
Metodo pubblico SetDateTime Imposta il valore della colonna specificata sul valore DateTime passato.
Metodo pubblico SetDecimal Imposta il valore della colonna specificata sul valore Decimal passato.
Metodo pubblico SetDefault Imposta la colonna specificata sul relativo valore predefinito.
Metodo pubblico SetDouble Imposta il valore della colonna specificata sul valore Double passato.
Metodo pubblico SetFloat Imposta il valore della colonna specificata sul valore Float passato.
Metodo pubblico SetGuid Imposta il valore della colonna specificata sul valore GUID passato.
Metodo pubblico SetInt16 Imposta il valore della colonna specificata sul valore Int16 passato.
Metodo pubblico SetInt32 Imposta il valore della colonna specificata sul valore Int32 passato.
Metodo pubblico SetInt64 Imposta il valore della colonna specificata sul valore Int64 passato.
Metodo pubblico SetObjectRef Associa un oggetto alla colonna in corrispondenza della posizione specificata.
Metodo pubblico SetSqlBinary Imposta il valore della colonna specificata sul valore SqlBinary passato.
Metodo pubblico SetSqlBoolean Imposta il valore della colonna specificata sul valore SqlBoolean passato.
Metodo pubblico SetSqlByte Imposta il valore della colonna specificata sul valore SqlByte passato.
Metodo pubblico SetSqlDateTime Imposta il valore della colonna specificata sul valore SqlDateTime passato.
Metodo pubblico SetSqlDecimal Imposta il valore della colonna specificata sul valore SqlDecimal passato.
Metodo pubblico SetSqlDouble Imposta il valore della colonna specificata sul valore SqlDouble passato.
Metodo pubblico SetSqlGuid Imposta il valore della colonna specificata sul valore SqlGuid passato.
Metodo pubblico SetSqlInt16 Imposta il valore della colonna specificata sul valore SqlInt16 passato.
Metodo pubblico SetSqlInt32 Imposta il valore della colonna specificata sul valore SqlInt32 passato.
Metodo pubblico SetSqlInt64 Imposta il valore della colonna specificata sul valore SqlInt64 passato.
Metodo pubblico SetSqlMoney Imposta il valore della colonna specificata sul valore SqlMoney passato.
Metodo pubblico SetSqlSingle Imposta il valore della colonna specificata sul valore SqlSingle passato.
Metodo pubblico SetSqlString Imposta il valore della colonna specificata sul valore SqlString passato.
Metodo pubblico SetString Imposta il valore della colonna specificata sul valore String passato.
Metodo pubblico SetValue Imposta il valore della colonna specificata sul valore passato.
Metodo pubblico SetValues Imposta ogni campo del record specificato sul valore corrispondente nella matrice specificata.
Metodo pubblico ToString (ereditato da Object)
Metodo pubblico Update Invia le modifiche dal record corrente alla riga sottostante sul server.

In alto

Implementazioni esplicite dell'interfaccia

  Nome Descrizione
Implementazione esplicita dell'interfacciaProprietà privata IListSource.ContainsListCollection
Implementazione esplicita dell'interfacciaMetodo privato IEnumerable.GetEnumerator
Implementazione esplicita dell'interfacciaMetodo privato IListSource.GetList
Implementazione esplicita dell'interfacciaMetodo privato IDataRecord.GetData (ereditato da DbDataReader)

In alto

Osservazioni

Nelle versioni precedenti di SQL Server Compact, per associare i controlli ai dati era necessario utilizzare una classe DataSet. Sebbene una classe SqlCeDataReader garantisca prestazioni migliori rispetto a una classe DataSet, il cursore fornito è di tipo forward-only non aggiornabile. In SQL Server Compact la classe SqlCeResultSet fornisce una combinazione di funzionalità, ovvero la possibilità di eseguire l'aggiornamento e lo scorrimento offerta dalla classe DataSet e prestazioni analoghe a quelle della classe SqlCeDataReader.

Per creare un oggetto SqlCeResultSet, è necessario chiamare il metodo ExecuteResultSet anziché utilizzare il costruttore dell'oggetto.

L'enumerazione ResultSetOptions consente di specificare le caratteristiche di scorrimento, aggiornamento e sensibilità (che determina la capacità dell'oggetto SqlCeResultSet di vedere le modifiche apportate dall'oggetto stesso o da altri) della classe SqlCeResultSet.

La posizione predefinita dell'interfaccia SqlCeDataReader è precedente al primo record. Per iniziare l'accesso ai dati, è necessario chiamare il metodo Read. La prima chiamata al metodo Read determinerà il posizionamento del cursore sul primo record. Il comportamento è diverso rispetto a quello del metodo SqlCeResultSet.Read. La posizione predefinita della classe SqlCeResultSet è il primo record. Se si chiama il metodo SqlCeResultSet.Read subito dopo la creazione di SqlCeResultSet, il cursore si sposterà sul secondo record.

Esempi

Nell'esempio seguente viene creato un nuovo database di SQL Server Compact. Viene quindi inizializzata una classe SqlCeResultSet per compilare il dataset con i dati.

Dim conn As SqlCeConnection = Nothing

Try
    File.Delete("Test.sdf")

    Dim engine As New SqlCeEngine("Data Source = Test.sdf")
    engine.CreateDatabase()

    conn = New SqlCeConnection("Data Source = Test.sdf")
    conn.Open()

    Dim cmd As SqlCeCommand = conn.CreateCommand()
    cmd.CommandText = "CREATE TABLE myTable (col1 INT, col2 MONEY, col3 NVARCHAR(200))"
    cmd.ExecuteNonQuery()

    cmd.CommandText = "SELECT * FROM myTable"

    Dim rs As SqlCeResultSet = cmd.ExecuteResultSet(ResultSetOptions.Updatable Or ResultSetOptions.Scrollable)

    Dim rec As SqlCeUpdatableRecord = rs.CreateRecord()

    rec.SetInt32(0, 34)
    rec.SetDecimal(1, System.Convert.ToDecimal(44.66))
    rec.SetString(2, "Sample text")

    rs.Insert(rec)
Catch e As Exception
    MessageBox.Show(e.Message)
Finally
    conn.Close()
End Try
SqlCeConnection conn = null;

try
{
    File.Delete("Test.sdf");

    SqlCeEngine engine = new SqlCeEngine("Data Source = Test.sdf");
    engine.CreateDatabase();

    conn = new SqlCeConnection("Data Source = Test.sdf");
    conn.Open();

    SqlCeCommand cmd = conn.CreateCommand();
    cmd.CommandText = "CREATE TABLE myTable (col1 INT, col2 MONEY, col3 NVARCHAR(200))";
    cmd.ExecuteNonQuery();

    cmd.CommandText = "SELECT * FROM myTable";

    SqlCeResultSet rs = cmd.ExecuteResultSet(ResultSetOptions.Updatable | 
        ResultSetOptions.Scrollable);

    SqlCeUpdatableRecord rec = rs.CreateRecord();

    rec.SetInt32(0, 34);
    rec.SetDecimal(1, (decimal)44.66);
    rec.SetString(2, "Sample text");

    rs.Insert(rec);
}
catch (Exception e)
{
    MessageBox.Show(e.Message);
}
finally
{
    conn.Close();
}

Protezione dei thread

I membri statici pubblici (Shared in Microsoft Visual Basic) di questo tipo sono thread-safe. Non è invece garantita la sicurezza dei membri dell'istanza.

Vedere anche

Riferimento

Spazio dei nomi System.Data.SqlServerCe