Freigeben über


SqlCeCommand.ExecuteNonQuery-Methode

Führt eine SQL-Anweisung für die SqlCeConnection-Klasse aus und gibt die Anzahl der betroffenen Zeilen zurück.

Namespace: System.Data.SqlServerCe
Assembly: System.Data.SqlServerCe (in system.data.sqlserverce.dll)

Syntax

'Declaration
Public Overrides Function ExecuteNonQuery As Integer
'Usage
Dim instance As SqlCeCommand
Dim returnValue As Integer

returnValue = instance.ExecuteNonQuery
public override int ExecuteNonQuery ()
public:
virtual int ExecuteNonQuery () override
public int ExecuteNonQuery ()
public override function ExecuteNonQuery () : int

Rückgabewert

Die Anzahl der betroffenen Zeilen.

Ausnahmen

Ausnahmetyp Bedingung

InvalidOperationException

Die Verbindung ist nicht vorhanden.

- oder -

Die Verbindung ist nicht offen.

- oder -

Ein Befehl in einem Transaktionskontext, der von dem Kontext abweicht, in dem die Verbindung ursprünglich eingetragen wurde, kann nicht ausführt werden.

Hinweise

Zum Ausführen von Katalogoperationen können Sie die ExecuteNonQuery-Methode verwenden. Sie können damit z. B die Struktur einer Datenbank abfragen oder Datenbankobjekte erstellen, z. B. Tabellen. Sie können mithilfe der ExecuteNonQuery-Methode auch die Daten in einer Datenbank ändern, ohne eine DataSet-Klasse zu verwenden, indem Sie die Anweisungen UPDATE, INSERT oder DELETE ausführen.

Wichtig

Die ExecuteNonQuery-Methode verwendet keinen Cursor und belegt die Datenbank deshalb nicht mit einer Sperre. Wenn Sie einen Befehl ausgeben, für den eine Sperre erforderlich ist, verwenden Sie nicht die ExecuteNonQuery-Methode. Verwenden Sie stattdessen die ExecuteReader-Methode.

Bei UPDATE-Anweisungen, INSERT-Anweisungen und DELETE-Anweisungen ist der Rückgabewert die Anzahl der vom Befehl betroffenen Zeilen. Bei allen anderen DML-Anweisungen ist der Rückgabewert -1.

Bei DDL-Anweisungen wie CREATE TABLE oder ALTER TABLE ist der Rückgabewert 0.

Hinweis

Dieses Verhalten unterscheidet sich von dem des System.Data.SqlClient-Namespace.

Beispiel

Im folgenden Beispiel wird eine SqlCeCommand-Klasse erstellt und anschließend mit der ExecuteNonQuery-Methode ausgeführt. Im Beispiel werden eine Zeichenfolge, die eine SQL-Anweisung (wie UPDATE, INSERT oder DELETE) ist, sowie eine Zeichenfolge, mit der eine Verbindung mit der Datenquelle erstellt werden soll, übergeben.

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();

.NET Framework-Sicherheit

  • Volle Vertrauenswürdigkeit für den unmittelbaren Aufrufer. Dieser Member kann von nur teilweise vertrauenswürdigem Code nicht verwendet werden. Weitere Informationen finden Sie unter .

Plattformen

Windows CE, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows XP Professional x64 Edition, Windows XP SP2

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Compact Framework

Unterstützt in: 2.0, 1.0

Siehe auch

Referenz

SqlCeCommand-Klasse
SqlCeCommand-Member
System.Data.SqlServerCe-Namespace