====== execute ======
~~NOTOC~~
== syntax ==
mixed execute {
mixed $sql
optional string[] $bindvars
}
===== Description =====
This method executes any provided SQL statement. If the SQL statement should return a recordset, e.g. ''SELECT'' statements, it returns a handle to an [[v5:reference:connection:adodb_recordset|ADOrecordset_array]] object or false if the statement execution fails. If the statement does not return a recordset, such as in ''INSERT'' or ''UPDATE'' statement, it returns a handle to an [[v5:reference:connection:adodb_recordset_empty|ADOrecordset_empty]] object on success or false on failure.
The presentation of the returned data can be modified by the [[v5:reference:adodb_fetch_mode|$ADODB_FETCH_MODE]] variable, the [[v5:reference:adodb_assoc_case|ADODB_ASSOC_CASE]] constant and the [[v5:reference:connection:setfetchmode|setFetchMode()]] function.
===== Parameters =====
==== Parameter 1 ====
The first parameter can be either:
- A string containing a complete SQL statement. ''SELECT * FROM ACT''
- A string containing an SQL statement with bind variables, ''SELECT * FROM ACT WHERE empno>:emp'', in which case the second parameter is an array containing the bind variables.
==== Parameter 2 ====
If set, contains an array of bind variables.
==== Result =====
If the execution succeeds, it returns a recordset. This recordset can be used by functions such as [[v5:reference:connection:getupdatesql|getUpdateSQL()]] or [[v5:reference:recordset:fetchrow|fetchRow()]].
if the execution fails, it returns false. You can access errors using [[v5:reference:connection:errormsg|errorMsg()]].
==== Usage ====
/*
* Connection assumed
*/
$result = $db->execute("SELECT * FROM ACT");
or:
$result = $db->execute("SELECT * FROM ACT WHERE empno > :emp",
array('emp'=>1234)
);