Execute Method (ADO Command)

See Also   Example   Applies To   

Executes the query, SQL statement, or stored procedure specified in the CommandText property.

Syntax

For a row-returning Command:

Set recordset = command.Execute( RecordsAffected, Parameters, Options )

For a non–row-returning Command:

command.Execute RecordsAffected, Parameters, Options

Return Value

Returns a Recordset object reference.

Parameters

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

Parameters   Optional. A Variant array of parameter values passed with an SQL statement. (Output parameters will not return correct values when passed in this argument.)

Options   Optional. A Long value that indicates how the provider should evaluate the CommandText property of the Command object. Can be any of the following:

Constant Description
adCmdText Indicates that the provider should evaluate CommandText as a textual definition of a command, such as an SQL statement.
adCmdTable Indicates that ADO should generate an SQL query to return all rows from the table named in CommandText.
adCmdTableDirect Indicates that the provider should return all rows from the table named in CommandText.
adCmdStoredProc Indicates that the provider should evaluate CommandText as a stored procedure.
adCmdUnknown Indicates that the type of command in CommandText is not known.
adExecuteAsync Indicates that the command should execute asynchronously.
adFetchAsync Indicates that the remaining rows after the initial quantity specified in the CacheSize property should be fetched asynchronously.

See the CommandType property for a more detailed explanation of the first four constants in this list.

Remarks

Using the Execute method on a Command object executes the query specified in the CommandText property of the object. If the CommandText property specifies a row-returning query, any results the execution generates are stored in a new Recordset object. If the command is not a row-returning query, the provider returns a closed Recordset object. Some application languages allow you to ignore this return value if no Recordset is desired.

If the query has parameters, the current values for the Command object's parameters are used unless you override these with parameter values passed with the Execute call. You can override a subset of the parameters by omitting new values for some of the parameters when calling the Execute method. The order in which you specify the parameters is the same order in which the method passes them. For example, if there were four (or more) parameters and you wanted to pass new values for only the first and fourth parameters, you would pass Array(var1,,,var4) as the Parameters argument.

Note   Output parameters will not return correct values when passed in the Parameters argument.

An ExecuteComplete event will be issued when this operation concludes.