PDO::errorCode
(PHP 5 >= 5.1.0, PECL pdo:0.1-1.0.3)
PDO::errorCode —
Fetch the SQLSTATE associated with the last operation on the database handle
Description
string PDO::errorCode
( void
)
Return Values
Returns a SQLSTATE, a five-character alphanumeric identifier defined in
the ANSI SQL-92 standard. Briefly, an SQLSTATE consists of a
two-character class value followed by a three-character subclass value. A
class value of 01 indicates a warning and is accompanied by a return code
of SQL_SUCCESS_WITH_INFO. Class values other than '01', except for the
class 'IM', indicate an error. The class 'IM' is specific to warnings
and errors that derive from the implementation of PDO (or perhaps ODBC,
if you're using the ODBC driver) itself. The subclass value '000' in any
class indicates that there is no subclass for that SQLSTATE.
PDO::errorCode() only retrieves error codes 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::errorCode() will not reflect that error.
You must call PDOStatement::errorCode() to return the error
code for an operation performed on a particular statement handle.
Examples
Example #1 Retrieving a SQLSTATE code
<?php
/* Provoke an error -- the BONES table does not exist */
$dbh->exec("INSERT INTO bones(skull) VALUES ('lucy')");
echo "\nPDO::errorCode(): ";
print $dbh->errorCode();
?>
The above example will output: