SqlCeCommand.ExecuteNonQuery 方法

针对 SqlCeConnection 执行 SQL 语句并返回受影响的行数。

命名空间: System.Data.SqlServerCe
程序集: System.Data.SqlServerCe(在 system.data.sqlserverce.dll 中)

语法

声明
Public Overrides Function ExecuteNonQuery As Integer
用法
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
不适用。

返回值

受影响的行数。

异常

异常类型 条件

InvalidOperationException

连接不存在。

- 或 -

连接未打开。

- 或 -

不能在连接最初在其中登记的上下文之外的事务上下文中执行命令。

备注

您可以使用 ExecuteNonQuery 执行目录操作。例如,您可以使用它来查询数据库的结构或者创建数据库对象(例如表)。还可以通过执行 UPDATE、INSERT 或 DELETE 语句,在不使用 DataSet 的情况下,使用 ExecuteNonQuery 更改数据库中的数据。

重要

ExecuteNonQuery 不使用游标,因此不在数据库上放置锁。如果您要发出需要锁的命令,请不要使用 ExecuteNonQuery,而应使用 ExecuteReader

对于 UPDATE、INSERT 和 DELETE 语句,返回值为该命令所影响的行数。对于所有其他 DML 语句,返回值都为 -1。

对于 DDL 语句,比如 CREATE TABLE 或 ALTER TABLE,返回值为 0。

备注

此行为不同于 System.Data.SqlClient 的行为。

示例

下面的示例将创建一个 SqlCeCommand,然后使用 ExecuteNonQuery 来执行它。向该示例传递两个字符串:一个是 SQL 语句(如 UPDATE、INSERT 或 DELETE),另一个是用于连接到数据源的字符串。

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

平台

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

Windows Vista、Microsoft Windows XP SP2 和 Windows Server 2003 SP1 支持 Microsoft .NET Framework 3.0。

版本信息

.NET Framework

受以下版本支持:3.0

.NET Compact Framework

受以下版本支持:2.0、1.0

请参见

参考

SqlCeCommand 类
SqlCeCommand 成员
System.Data.SqlServerCe 命名空间