OleDbCommand.ExecuteNonQuery 方法

定义

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

public:
 override int ExecuteNonQuery();
public:
 virtual int ExecuteNonQuery();
public override int ExecuteNonQuery ();
public int ExecuteNonQuery ();
override this.ExecuteNonQuery : unit -> int
abstract member ExecuteNonQuery : unit -> int
override this.ExecuteNonQuery : unit -> int
Public Overrides Function ExecuteNonQuery () As Integer
Public 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 执行目录操作,例如,查询数据库的结构或创建数据库对象(如表),或者通过执行 UPDATE、INSERT 或 DELETE 语句来 DataSet 更改数据库中的数据。

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

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

适用于

另请参阅