IDbCommand.ExecuteNonQuery 方法

针对 .NET Framework 数据提供程序的 Connection 对象执行 SQL 语句,并返回受影响的行数。

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

语法

声明
Function ExecuteNonQuery As Integer
用法
Dim instance As IDbCommand
Dim returnValue As Integer

returnValue = instance.ExecuteNonQuery
int ExecuteNonQuery ()
int ExecuteNonQuery ()
int ExecuteNonQuery ()
function ExecuteNonQuery () : int

返回值

受影响的行数。

异常

异常类型 条件

InvalidOperationException

连接不存在。

- 或 -

连接未打开。

备注

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

虽然 ExecuteNonQuery 不返回任何行,但映射到参数的任何输出参数或返回值都会用数据进行填充。

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

示例

下面的示例创建派生类 OleDbCommand 的实例,然后执行它。为此,需要向该方法传递两个字符串:一个是 SQL Select 语句,另一个是用于连接到数据源的字符串。

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 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

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

版本信息

.NET Framework

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

.NET Compact Framework

受以下版本支持:2.0、1.0

请参见

参考

IDbCommand 接口
IDbCommand 成员
System.Data 命名空间