Sun
ONE Active Server Pages Product Home Page Developer Site Version
 

ContentsPreviousNextIndex



ADO Command Object Execute Method

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

Object Execute Method Syntax (ADO Command Object)

For a row-returning Command:

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

For a non-row-returning Command:

command.Execute RecordsAffected, Parameters, Options 
Object Execute Method Parameters (ADO Command Object)

RecordsAffected

An optional Long variable to which the provider returns the number of records that the operation affected.

Parameters

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

Options

An optional Long value that indicates how the provider should evaluate the CommandText property of the Command object:

Constant
Description
adCmdText
The provider should evaluate CommandText as a textual definition of a command, such as a SQL statement.
adCmdTable
The provider should evaluate CommandText as a table name.
adCmdStoredProc
The provider should evaluate CommandText as a stored procedure.
adCmdUnknown
The type of command in CommandText is not known.

See the ADO Command Object CommandType Property for a more detailed explanation of the four constants in this list.

Object Execute Method Remarks (ADO Command Object)

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 ADO 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 icon Note Output parameters will not return correct values when passed in the Parameters argument.
Object Execute Method Return Values (ADO Command Object)

Returns a Recordset object reference.

Object Execute Method Examples (ADO Command Object)

This VBScript example demonstrates the Execute method when run from both a Command object and an ADO Connection Object. It also uses the ADO Recordset Object Requery Method to retrieve current data in a recordset, and the ADO Collections Clear Method to clear the contents of the ADO Errors Collection. The ExecuteCommand and PrintOutput procedures are required for this procedure to run.

<!-- #Include file="ADOVBS.INC" --> 
<HTML><HEAD> 
<TITLE>ADO 1.5 Execute Method</TITLE></HEAD>
<BODY> 
<FONT FACE="MS SANS SERIF" SIZE=2> 
<Center><H3>ADO Execute Method</H3><H4>Recordset Retrieved Using Connection Object</H4> 
<TABLE WIDTH=600 BORDER=0> 
<TD VALIGN=TOP ALIGN=LEFT COLSPAN=3><FONT SIZE=2>
<!--- Recordsets retrieved using Execute method of Connection and Command Objects--> 
<% 
Set OBJdbConnection = Server.CreateObject("ADODB.Connection") 
OBJdbConnection.Open "AdvWorks" 
SQLQuery = "SELECT * FROM Customers" 
'First Recordset RSCustomerList 
Set RSCustomerList = OBJdbConnection.Execute(SQLQuery) 
Set OBJdbCommand = Server.CreateObject("ADODB.Command") 
Set OBJdbCommand.ActiveConnection = OBJdbConnection 
SQLQuery2 = "SELECT * From Products" 
OBJdbCommand.CommandText = SQLQuery2 
Set RsProductList = OBJdbCommand.Execute 
%> 
<TABLE COLSPAN=8 CELLPADDING=5 BORDER=0>
<!-- BEGIN column header row for Customer Table--> 
<TR><TD ALIGN=CENTER BGCOLOR="#008080"> 
<FONT STYLE="ARIAL NARROW" COLOR="#ffffff" SIZE=1>Company Name</FONT> 
</TD> 
<TD ALIGN=CENTER BGCOLOR="#008080"> 
<FONT STYLE="ARIAL NARROW" COLOR="#ffffff" SIZE=1>Contact Name</FONT> 
</TD> 
<TD ALIGN=CENTER WIDTH=150 BGCOLOR="#008080"> 
<FONT STYLE="ARIAL NARROW" COLOR="#ffffff" SIZE=1>E-mail address</FONT> 
</TD> 
<TD ALIGN=CENTER BGCOLOR="#008080"> 
<FONT STYLE="ARIAL NARROW" COLOR="#ffffff" SIZE=1>City</FONT> 
</TD> 
<TD ALIGN=CENTER BGCOLOR="#008080"> 
<FONT STYLE="ARIAL NARROW" COLOR="#ffffff" SIZE=1>State/Province</FONT> 
</TD></TR>
<!--Display ADO Data from Customer Table--> 
<% Do While Not RScustomerList.EOF %> 
<TR> 
<TD BGCOLOR="f7efde" ALIGN=CENTER> 
<FONT STYLE="ARIAL NARROW" SIZE=1> 
<%= RSCustomerList("CompanyName")%> 
</FONT></TD> 
<TD BGCOLOR="f7efde" ALIGN=CENTER> 
<FONT STYLE="ARIAL NARROW" SIZE=1> 
<%= RScustomerList("ContactLastName") & ", " %> 
<%= RScustomerList("ContactFirstName") %> 
</FONT></TD> 
<TD BGCOLOR="f7efde" ALIGN=CENTER> 
<FONT STYLE="ARIAL NARROW" SIZE=1> 
<%= RScustomerList("ContactLastName")%> 
</FONT></TD> 
<TD BGCOLOR="f7efde" ALIGN=CENTER> 
<FONT STYLE="ARIAL NARROW" SIZE=1> 
<%= RScustomerList("City")%> 
</FONT></TD> 
<TD BGCOLOR="f7efde" ALIGN=CENTER> 
<FONT STYLE="ARIAL NARROW" SIZE=1> 
<%= RScustomerList("StateOrProvince")%> 
</FONT></TD> 
</TR> 
<!-Next Row = Record Loop and add to html table--> 
<% 
RScustomerList.MoveNext 
Loop 
RScustomerList.Close 
%>
</TABLE><HR> 
<H4>Recordset Retrieved Using Command Object</H4> 
<TABLE COLSPAN=8 CELLPADDING=5 BORDER=0>
<!-- BEGIN column header row for Product List Table--> 
<TR><TD ALIGN=CENTER BGCOLOR="#800000"> 
<FONT STYLE="ARIAL NARROW" COLOR="#ffffff" SIZE=1>Product Type</FONT> 
</TD> 
<TD ALIGN=CENTER BGCOLOR="#800000"> 
<FONT STYLE="ARIAL NARROW" COLOR="#ffffff" SIZE=1>Product Name</FONT> 
</TD> 
<TD ALIGN=CENTER WIDTH=350 BGCOLOR="#800000"> 
<FONT STYLE="ARIAL NARROW" COLOR="#ffffff" SIZE=1>Product Description</FONT> 
</TD> 
<TD ALIGN=CENTER BGCOLOR="#800000"> 
<FONT STYLE="ARIAL NARROW" COLOR="#ffffff" SIZE=1>Unit Price</FONT> 
</TD></TR>
<!-- Display ADO Data Product List--> 
<% Do While Not RsProductList.EOF %> 
<TR> 
<TD BGCOLOR="f7efde" ALIGN=CENTER> 
<FONT STYLE="ARIAL NARROW" SIZE=1> 
<%= RsProductList("ProductType")%> 
</FONT></TD> 
<TD BGCOLOR="f7efde" ALIGN=CENTER> 
<FONT STYLE="ARIAL NARROW" SIZE=1> 
<%= RsProductList("ProductName")%> 
</FONT></TD> 
<TD BGCOLOR="f7efde" ALIGN=CENTER> 
<FONT STYLE="ARIAL NARROW" SIZE=1> 
<%= RsProductList("ProductDescription")%> 
</FONT></TD>
<TD BGCOLOR="f7efde" ALIGN=CENTER> 
<FONT STYLE="ARIAL NARROW" SIZE=1> 
<%= RsProductList("UnitPrice")%> 
</FONT></TD> 
<!-- Next Row = Record --> 
<% 
RsProductList.MoveNext 
Loop 
'Remove objects from memory to free resources 
RsProductList.Close 
OBJdbConnection.Close 
Set ObJdbCommand = Nothing 
Set RsProductList = Nothing 
Set OBJdbConnection = Nothing 
%> 
</TABLE></FONT></Center></BODY></HTML>


ContentsPreviousNextIndex