SqlCeCommand.ExecuteNonQuery Method
Esegue un'istruzione SQL in relazione alla classe SqlCeConnection e restituisce il numero di righe interessate.
Spazio dei nomi: System.Data.SqlServerCe
Assembly: System.Data.SqlServerCe (in system.data.sqlserverce.dll)
Sintassi
'Dichiarazione
Public Overrides Function ExecuteNonQuery As Integer
public override int ExecuteNonQuery ()
public:
virtual int ExecuteNonQuery () override
public int ExecuteNonQuery ()
public override function ExecuteNonQuery () : int
Valore restituito
Numero di righe interessate.
Eccezioni
Tipo di eccezione | Condizione |
---|---|
InvalidOperationException | La connessione non esiste. oppure La connessione non è aperta. oppure Impossibile eseguire un comando all'interno di un contesto di transazione differente da quello in cui la connessione è stata in origine inserita. |
Osservazioni
È possibile utilizzare il metodo ExecuteNonQuery per eseguire operazioni di catalogo. Ad esempio, è possibile utilizzare tale metodo per effettuare query sulla struttura di un database o per creare oggetti di database quali tabelle. È anche possibile utilizzare il metodo ExecuteNonQuery per modificare i dati in un database senza utilizzare un oggetto DataSet mediante l'esecuzione di istruzioni UPDATE, INSERT o DELETE.
Importante
Il metodo ExecuteNonQuery non utilizza un cursore e pertanto non inserisce blocchi sul database. Se si emette un comando che richiede un blocco, non utilizzare ExecuteNonQuery. Utilizzare invece ExecuteReader.
Nel caso delle istruzioni UPDATE, INSERT e DELETE, il valore restituito è il numero di righe interessate dal comando. Per tutte le altre istruzioni DML, il valore restituito è -1.
Per le istruzioni DDL quali CREATE TABLE o ALTER TABLE, il valore restituito è 0.
Nota
Questo comportamento è diverso da quello di System.Data.SqlClient.
Esempio
Nell'esempio che segue viene creato un oggetto SqlCeCommand, che viene quindi eseguito mediante ExecuteNonQuery. Nell'esempio viene passata una stringa che consiste in un'istruzione SQL, quale UPDATE, INSERT o DELETE, e una stringa per la connessione all'origine dati.
conn.Open()
Dim cmd As New SqlCeCommand("INSERT INTO foo (col1) VALUES (1)", conn)
cmd.ExecuteNonQuery()
conn.Close()
conn.Open();
SqlCeCommand cmd = new SqlCeCommand("INSERT INTO foo (col1) VALUES (1)", conn);
cmd.ExecuteNonQuery();
conn.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