PHP Manual


(PHP 5 >= 5.1.0, PHP 7, PECL pdo >= 0.1.0)

PDO::errorInfo Fetch extended error information associated with the last operation on the database handle


public array PDO::errorInfo ( void )

Return Values

PDO::errorInfo() returns an array of error information about the last operation performed by this database handle. The array consists of the following fields:

Element Information
0 SQLSTATE error code (a five characters alphanumeric identifier defined in the ANSI SQL standard).
1 Driver-specific error code.
2 Driver-specific error message.


If the SQLSTATE error code is not set or there is no driver-specific error, the elements following element 0 will be set to NULL.

PDO::errorInfo() only retrieves error information for operations performed directly on the database handle. If you create a PDOStatement object through PDO::prepare() or PDO::query() and invoke an error on the statement handle, PDO::errorInfo() will not reflect the error from the statement handle. You must call PDOStatement::errorInfo() to return the error information for an operation performed on a particular statement handle.


Example #1 Displaying errorInfo() fields for a PDO_ODBC connection to a DB2 database

/* Provoke an error -- bogus SQL syntax */
$stmt $dbh->prepare('bogus sql');
if (!
$stmt) {

The above example will output:

    [0] => HY000
    [1] => 1
    [2] => near "bogus": syntax error

See Also

PHP Manual