gpt4 book ai didi

php - 使用 PHP 获取 MySQL 错误代码

转载 作者:行者123 更新时间:2023-11-29 01:11:32 26 4
gpt4 key购买 nike

我正在使用 PHP 和 PDO 连接到我的 MySQL 数据库。我配置了 PDO 连接,以便将任何 MySQL 错误作为异常抛出:

$dbConnection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

现在假设我执行了一个生成错误的 MySQL 命令并且我捕获了它,错误消息是这样的:

SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'Name' cannot be null

当我使用 $exception->getCode() 时,它返回 23000,我认为它来自 PHP 或其他东西。如何在 catch block 中获取特定的 MySQL 错误 (1048)?

最佳答案

A PDOException对象有一个属性 errorInfo,它是一个三元素数组,与 PDO::errorInfo() 返回的相同。 MySQL错误码为元素1。

try {
. . .
} catch (PDOException $e)
$errorInfo = $e->errorInfo;
error_log "MySQL error " . $errorInfo[1] . "\n";
}

PS:请注意,只是回显错误并不是正确的异常处理,我这样做只是为了展示如何访问信息。

关于php - 使用 PHP 获取 MySQL 错误代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15961402/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com