OleDbCommand.ExecuteNonQuery 方法

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

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

语法

声明
Public Overrides Function ExecuteNonQuery As Integer
用法
Dim instance As OleDbCommand
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 不返回任何行,但映射到参数的任何输出参数或返回值都会用数据进行填充。

对于 UPDATE、INSERT 和 DELETE 语句,返回值为该命令所影响的行数。对于所有其他类型的语句,返回值为 -1。如果发生回滚,返回值也为 -1。

示例

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

Private Sub CreateOleDbCommand( _
    ByVal queryString As String, ByVal connectionString As String)
    Using connection As New OleDbConnection(connectionString)
        connection.Open()
        Dim command As New OleDbCommand(queryString, connection)
        command.ExecuteNonQuery()
    End Using
End Sub
static private void CreateOleDbCommand(
    string queryString, string connectionString)
{
    using (OleDbConnection connection = new 
               OleDbConnection(connectionString))
    {
        connection.Open();
        OleDbCommand command = new 
            OleDbCommand(queryString, connection);
        command.ExecuteNonQuery();
    }
}

平台

Windows 98、Windows 2000 SP4、Windows Millennium Edition、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

请参见

参考

OleDbCommand 类
OleDbCommand 成员
System.Data.OleDb 命名空间

其他资源

使用命令