OleDbCommand.ExecuteNonQuery 方法

定义

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

public:
 virtual int ExecuteNonQuery();
public:
 override int ExecuteNonQuery();
public int ExecuteNonQuery();
public override int ExecuteNonQuery();
abstract member ExecuteNonQuery : unit -> int
override this.ExecuteNonQuery : unit -> int
override this.ExecuteNonQuery : unit -> int
Public Function ExecuteNonQuery () As Integer
Public Overrides Function ExecuteNonQuery () As Integer

返回

受影响的行数。

实现

例外

连接不存在。

-或-

连接未打开。

-或-

无法在事务上下文中执行与最初登记连接的上下文不同的命令。

示例

下面的示例创建一个 OleDbCommand ,然后使用它 ExecuteNonQuery执行。 此示例传递了一个字符串,该字符串是 SQL 语句,例如 UPDATE、INSERT 或 DELETE,以及用于连接到数据源的字符串。

static private void CreateOleDbCommand(
    string queryString, string connectionString)
{
    using (OleDbConnection connection = new
               OleDbConnection(connectionString))
    {
        connection.Open();
        OleDbCommand command = new
            OleDbCommand(queryString, connection);
        command.ExecuteNonQuery();
    }
}
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

注解

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

尽管不 ExecuteNonQuery 返回任何行,但映射到参数的任何输出参数或返回值都填充了数据。

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

适用于

另请参阅