PHP8 PDO::errorCode
(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.1.0)
PDO::errorCode — 获取跟数据库句柄上一次操作相关的 SQLSTATE
说明
public PDO::errorCode(): ?string
参数
此函数没有参数。
返回值
返回一个 SQLSTATE,一个由 5 个字母或数字组成的在 ANSI SQL 标准中定义的标识符。 简要地说,一个 SQLSTATE 由前面两个字符的类值和后面三个字符的子类值组成。
PDO::errorCode() 仅检索直接在数据库句柄上操作执行的错误代码。 如果通过 PDO::prepare() 或 PDO::query() 创建的 PDOStatement 对象并且在 statement 句柄上调用错误,PDO::errorCode() 将不会反映该错误。 必须在特定 statement 句柄上调用 PDOStatement::errorCode() 返回操作执行的错误代码。
如果数据库句柄没有进行操作,则返回 null 。
示例
示例 #1 取得一个 SQLSTATE 码
<?php
/* 引发一个错误 -- BONES 数据表不存在 */
$dbh->exec("INSERT INTO bones(skull) VALUES ('lucy')");
echo "\nPDO::errorCode(): ", $dbh->errorCode();
?>
以上示例会输出:
PDO::errorCode(): 42S02
参见
- PDO::errorInfo() - 获取与数据库句柄上的最后一个操作关联的扩展错误信息
- PDOStatement::errorCode() - 获取跟上一次语句句柄操作相关的 SQLSTATE
- PDOStatement::errorInfo() - 获取跟上一次语句句柄操作相关的扩展错误信息