array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'zh', ), 'this' => array ( 0 => 'pdo.errorinfo.php', 1 => 'PDO::errorInfo', 2 => 'Fetch extended error information associated with the last operation on the database handle', ), 'up' => array ( 0 => 'class.pdo.php', 1 => 'PDO', ), 'prev' => array ( 0 => 'pdo.errorcode.php', 1 => 'PDO::errorCode', ), 'next' => array ( 0 => 'pdo.exec.php', 1 => 'PDO::exec', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'en', 'path' => 'reference/pdo/pdo/errorinfo.xml', ), 'history' => array ( ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); contributors($setup); ?>
(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.1.0)
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 at least 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.
示例 #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());
}
?>以上示例会输出:
PDO::errorInfo():
Array
(
[0] => HY000
[1] => 1
[2] => near "bogus": syntax error
)