对连接执行 Transact-SQL 语句并返回受影响的行数。
命名空间:System.Data.SqlClient
程序集:System.Data(在 system.data.dll 中)
'声明
Public
Overrides
Function ExecuteNonQuery
As
Integer
'用法
Dim instance As SqlCommand
Dim returnValue As Integer
returnValue = instance.ExecuteNonQuery
public int ExecuteNonQuery ()
返回值
受影响的行数。
异常类型 | 条件 |
---|
SqlException | 在对锁定的行执行该命令期间发生了异常。如果使用的是 Microsoft .NET Framework 1.0 版,将不会生成该异常。 |
您可以使用 ExecuteNonQuery 来执行目录操作(例如查询数据库的结构或创建诸如表等的数据库对象),或通过执行 UPDATE、INSERT 或 DELETE 语句,在不使用 DataSet 的情况下更改数据库中的数据。
虽然 ExecuteNonQuery 不返回任何行,但映射到参数的任何输出参数或返回值都会用数据进行填充。
对于 UPDATE、INSERT 和 DELETE 语句,返回值为该命令所影响的行数。对于所有其他类型的语句,返回值为 -1。如果发生回滚,返回值也为 -1。
下面的示例创建一个 SqlCommand,然后使用 ExecuteNonQuery 执行它。给该示例传递两个字符串:一个字符串是 Transact-SQL 语句(如 UPDATE、INSERT 或 DELETE),另一个字符串用于连接数据源。
Public
Sub CreateCommand(
ByVal queryString
As
String, _
ByVal connectionString
As
String)
Using connection
As
New SqlConnection(connectionString)
Dim command
As
New SqlCommand(queryString, connection)
command.Connection.Open()
command.ExecuteNonQuery()
End
Using
End
Sub