Execute 方法(ADO 命令)

适用于:Access 2013 | Access 2016

用于执行在 CommandText 属性中指定的查询、SQL 语句或存储过程。

语法

对于 Recordset 返回的 Command

对于非 Recordset 返回的 Command

返回值

返回一个 Recordset 对象引用或 Nothing

参数

  • RecordsAffected

    • 可选。 一个 Long 型变量,提供程序向其返回操作所影响的记录数。 RecordsAffected 参数只适用于操作查询或存储过程。 RecordsAffected 不返回由结果返回查询或存储过程返回的记录数。 若要获取此信息,请使用 RecordCount 属性。 如果与 adAsyncExecute 一起使用,则 Execute 方法不会返回正确的信息,这仅是因为当命令异步执行时,在方法返回时尚不知道受影响的记录数。
  • Parameters

    • 可选。 随 SQL 语句一起传递的参数值的 Variant 数组。 (输出参数在此参数中传递时不会返回正确的值。)
  • Options

    • 可选。 长整型值,用于指示提供程序评估 Command 对象的 CommandText 属性的方式。 该参数可以是用 CommandTypeEnum 和/或 ExecuteOptionEnum 值生成的位掩码值。 例如,如果希望 ADO 将 CommandText 属性的值评估为文本,并指示命令应当放弃且不返回当执行命令文本时可能生成的任何记录,那么可以同时使用 adCmdTextadExecuteNoRecords

备注

如果对 Command 对象使用 Execute 方法,则会执行在对象的 CommandText 属性中指定的查询。 如果 CommandText 属性指定行返回查询,则执行所生成的任何结果都存储在新的 Recordset 对象中。 如果命令不是行返回查询,则提供程序返回关闭的 Recordset 对象。 在某些应用程序语言中,如果不需要 Recordset ,则允许忽略此返回值。

如果查询具有参数,则使用 Command 对象参数的当前值,除非这些值被用 Execute 调用传递的参数值所替代。 在调用 Execute 方法时,可以通过省略某些参数的新值来替代参数的子集。 参数的指定次序与方法传递它们的次序相同。 例如,如果有四个 (或更多个) 参数,并且你只想为第一个和第四个参数传递新值,则可以作为 Parameters 参数传递。

注意

如果输出参数在 Parameters 参数中传递,则不会返回正确的值。

此操作结束后,将发布 ExecuteComplete 事件。

另请参阅

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。