Condividi tramite


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