Metodo di esecuzione ADO


❮ Completare il riferimento all'oggetto di connessione

Il metodo Execute esegue una query, un'istruzione SQL, una procedura memorizzata o un testo specifico del provider specificati.

I risultati vengono archiviati in un nuovo oggetto Recordset se si tratta di una query di restituzione di riga. Un oggetto Recordset chiuso verrà restituito se non è una query di restituzione di riga. 

Nota: il recordset restituito è sempre un recordset di sola lettura e solo inoltro!

Suggerimento: per creare un Recordset con più funzionalità, crea prima un oggetto Recordset. Impostare le proprietà desiderate e quindi utilizzare il metodo Open dell'oggetto Recordset per eseguire la query.

Sintassi per il ritorno di riga

Set objrs=objconn.Execute(commandtext,ra,options)

Sintassi per non ritorno di riga

objconn.Execute commandtext,ra,options

Parameter Description
commandtext Required. The SQL statement, stored procedure, or provider-specific text to execute
ra Optional. The number of records affected by the query
options Optional. Sets how the provider should evaluate the commandtext parameter. Can be one or more CommandTypeEnum or ExecuteOptionEnum values. Default is adCmdUnspecified

Esempio

<%
sql="SELECT companyname FROM Customers"
Set rs=conn.Execute(sql)
%>

CommandTypeEnum Valori

Constant Value Description
adCmdUnspecified -1 Does not specify the command type argument.
adCmdText 1 Evaluates CommandText as a textual definition of a command or stored procedure call.
adCmdTable 2 Evaluates CommandText as a table name whose columns are all returned by an internally generated SQL query.
adCmdStoredProc 4 Evaluates CommandText as a stored procedure name.
adCmdUnknown 8 Indicates that the type of command in the CommandText property is not known.
adCmdFile 256 Evaluates CommandText as the file name of a persistently stored Recordset. Used with Recordset.Open or Requery only.
adCmdTableDirect 512 Evaluates CommandText as a table name whose columns are all returned. Used with Recordset.Open or Requery only. To use the Seek method, the Recordset must be opened with adCmdTableDirect. This value cannot be combined with the ExecuteOptionEnum value adAsyncExecute.

Valori ExecuteOptionEnum

Constant Value Description
adOptionUnspecified -1 Indicates that the command is unspecified.
adAsyncExecute   Indicates that the command should execute asynchronously. This value cannot be combined with the CommandTypeEnum value adCmdTableDirect.
adAsyncFetch   Indicates that the remaining rows after the initial quantity specified in the CacheSize property should be retrieved asynchronously.
adAsyncFetchNonBlocking   Indicates that the main thread never blocks while retrieving. If the requested row has not been retrieved, the current row automatically moves to the end of the file. If you open a Recordset from a Stream containing a persistently stored Recordset, adAsyncFetchNonBlocking will not have an effect; the operation will be synchronous and blocking. adAsynchFetchNonBlocking has no effect when the adCmdTableDirect option is used to open the Recordset.
adExecuteNoRecords   Indicates that the command text is a command or stored procedure that does not return rows (for example, a command that only inserts data). If any rows are retrieved, they are discarded and not returned. adExecuteNoRecords can only be passed as an optional parameter to the Command or Connection Execute method.
adExecuteStream   Indicates that the results of a command execution should be returned as a stream. adExecuteStream can only be passed as an optional parameter to the Command Execute method.
adExecuteRecord   Indicates that the CommandText is a command or stored procedure that returns a single row which should be returned as a Record object.

❮ Completare il riferimento all'oggetto di connessione