(PHP 5 >= 5.1.0, PECL pdo:0.1-1.0.3)
PDO->errorInfo() — Fetch extended error information associated with the last operation on the database handle
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-character alphanumeric identifier defined in the ANSI SQL standard). |
1 | Driver-specific error code. |
2 | Driver-specific error message. |
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
<?php
/* Provoke an error -- bogus SQL syntax */
$stmt = $dbh->prepare('bogus sql');
if (!$stmt) {
echo "\nPDO::errorInfo():\n";
print_r($dbh->errorInfo());
}
?>
The above example will output:
PDO::errorInfo():
Array
(
[0] => HY000
[1] => 1
[2] => near "bogus": syntax error
)