MDB_Common::execute()

MDB_Common::execute() -- executes a prepared SQL statment

Synopsis

require_once 'MDB.php';

mixed execute (resource $stmt, array [$types = NULL], array [$params = array()], array [$param_types = NULL])

Description

execute() joins the prepared SQL statment from prepareQuery() with the given data and executes the SQL query.

Parameter

resource $stmt

query handle from prepareQuery()

array $types

if supplied, the types of the columns in the result set will be set for fetching

array $params

a numeric array containing the data to insert into the query

array $param_types

if supplied, the values in $param will automatically be set to the passed datatypes

Return value

mixed - a resource id/MDB_OK or a MDB_Error, if fail

Throws

Table 26-1. Possible PEAR_Error values

Error codeError messageReasonSolution
MDB_ERROR_INVALID NULL SQL statment handle is not valid. Check correct processing of the SQL statment with prepareQuery() . Note that execute() requires a handle to the statement returned by prepareQuery() , not the statment itself.
MDB_ERROR_NEED_MORE_DATA NULL To less data for filling the prepared SQL statment. Check the number of wild cards given in the SQL statment for prepareQuery() . Check the count of entries in the array for $data. The count of entries have to be equal to the number of wild cards.
MDB_ERROR_NO_DB_SELECTED NULL No database was choosen. Check the DSN in connect() .
every other error code  Database specific error Check the database related section of PHP-Manual to detect the reason for this error. In the most cases a misformed SQL statment. Ie. using LIMIT in a SQL-Statment for an Oracle database.

Note

This function can not be called statically.

See

prepareQuery() , executeMultiple()