PDO::errorInfo

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

&reftitle.description; public `array` `PDO::errorInfo`
&reftitle.returnvalues;

`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.

&reftitle.examples;

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

    <?php
    /* Provoke an error -- bogus SQL syntax */
    $stmt = $dbh->prepare('bogus sql');
    if (!$stmt) {
        echo "\nPDO::errorInfo():\n";
        print_r($dbh->errorInfo());
    }
    ?>

&example.outputs;

    PDO::errorInfo():
    Array
    (
        [0] => HY000
        [1] => 1
        [2] => near "bogus": syntax error
    )

&reftitle.seealso;

- `PDO::errorCode`
- `PDOStatement::errorCode`
- `PDOStatement::errorInfo`