PDOStatement::errorInfo

(no version information, might be only in CVS)

PDOStatement::errorInfo --  Fetch an array of error information associated with the last operation on the statement handle

Description

array PDOStatement::errorInfo ( void )

Warning

This function is EXPERIMENTAL. The behaviour of this function, the name of this function, and anything else documented about this function may change without notice in a future release of PHP. Use this function at your own risk.

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

ElementInformation
0Generic PDO error code corresponding to one of the PDO_ERR_* constants.
1Driver-specific error code.
2Driver-specific error message.

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

<?php
/* Provoke an error -- the BONES table does not exist */
$sth = $dbh->prepare('SELECT skull FROM bones');
$sth->execute();

$arr = $sth->errorInfo();
if (
$arr[0] == PDO_ERR_NOT_FOUND) {
    echo
"Error: a requested database object does not exist.\n";
    
printf("Driver-specific error code: %d\n", $arr[1]);
    
printf("Driver-specific message: [%s]\n", $arr[2]);
}
?>

The above example will output:

Error: a requested database object does not exist.
Driver-specific error code: -204
Driver-specific message: [SQLExecute: -204 [IBM][CLI Driver][DB2/NT]
SQL0204N  "DB2INST1.BONES" is an undefined name.  SQLSTATE=42704
 [SQL State 42S02]  (..\pecl\pdo_odbc\odbc_stmt.c:80)]