Table of contents
Collapse the table of content
Expand the table of content

Execute Method (ADO Connection)

office 365 dev account|Last Updated: 4/3/2018
3 Contributors

Applies to: Access 2013 | Access 2016

In this articleSyntaxReturn ValueParametersRemarks

Executes the specified query, SQL statement, stored procedure, or provider-specific text.


For a non-row-returning command string:

For a row-returning command string:

Return Value

Returns a Recordset object reference.


  • CommandText

  • A String value that contains the SQL statement, stored procedure, a URL, or provider-specific text to execute. Optionally, table names can be used but only if the provider is SQL aware. For example if a table name of "Customers" is used, ADO will automatically prepend the standard SQL Select syntax to form and pass "SELECT * FROM Customers" as a T-SQL statement to the provider.

  • RecordsAffected

  • Optional. A Long variable to which the provider returns the number of records that the operation affected.

  • Options

  • Optional. A Long value that indicates how the provider should evaluate the CommandText argument. Can be a bitmask of one or moreCommandTypeEnum orExecuteOptionEnum values.

Note Use the ExecuteOptionEnum value adExecuteNoRecords to improve performance by minimizing internal processing.

Do not use the CommandTypeEnum values of adCmdFile or adCmdTableDirect with Execute. These values can only be used as options with theOpen andRequery methods of a Recordset.


Using the Execute method on aConnection object executes whatever query you pass to the method in the CommandText argument on the specified connection. If the CommandText argument specifies a row-returning query, any results that the execution generates are stored in a new Recordset object. If the command is not intended to return results (for example, an SQL UPDATE query) the provider returns Nothing as long as the option adExecuteNoRecords is specified; otherwise Execute returns a closed Recordset.

The returned Recordset object is always a read-only, forward-only cursor. If you need a Recordset object with more functionality, first create a Recordset object with the desired property settings, then use the Recordset object'sOpen method to execute the query and return the desired cursor type.

The contents of the CommandText argument are specific to the provider and can be standard SQL syntax or any special command format that the provider supports.

An ExecuteComplete event will be issued when this operation concludes.

Note URLs using the http scheme will automatically invoke the Microsoft OLE DB Provider for Internet Publishing. For more information, see Absolute and Relative URLs.

Access for developers forum on MSDN
Access help on
Access help on
Search for specific Access error codes on Bing
Access forums on UtterAccess
Access wiki on UtterAcess
Access developer and VBA programming help center (FMS)
Access posts on StackOverflow

© 2018 Microsoft