gpt4 book ai didi

php - PDO : Error not caught when executing prepared statement 故障排除

转载 作者:可可西里 更新时间:2023-11-01 07:50:46 26 4
gpt4 key购买 nike

<分区>

我在使用 PDO 时遇到了问题,因为没有捕获到错误。

代码很简单并且工作得很好,我将包含一个示例以避免混淆:

$sql = 'INSERT INTO somedatetable (something) 
VALUES (:something)
ON DUPLICATE KEY UPDATE something=:something';

$values = array(":something" => $something);

try {
$stmt = $dbh->prepare($sql);
$stmt->execute($values);
} catch (PDOException $e) {
echo "Error: " . $e->getMessage() . "<br />\n";
}

代码工作正常,但是在处理新模块时,我遇到了一个问题,即没有添加或修改任何记录,也没有捕获到任何错误。

$stmt 返回了 false 但我不知道为什么或如何找到错误。

最终解决方案很简单,我使用的是受限的 MySQL 用户,该用户对表没有写权限。这些错误总是在使用 mysql 时立即显示,但使用 PDO 我不知道如何找到它们。

我如何让 PHP/PDO 显示或捕获这些类型的数据库错误?

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