当前位置: 首页 > 面试题库 >

PDO错误消息?

贾越
2023-03-14
问题内容

这是我的代码片段:

$qry = '
    INSERT INTO non-existant-table (id, score) 
    SELECT id, 40 
    FROM another-non-existant-table
    WHERE description LIKE "%:search_string%"
    AND available = "yes"
    ON DUPLICATE KEY UPDATE score = score + 40
';
$sth = $this->pdo->prepare($qry);
$sth->execute($data);

print_r($this->pdo->errorInfo());

这应该给我一个错误,因为这些表甚至不存在。但是我得到的是:

数组([0] => 00000)

如何获得对该错误的更好描述,以便可以调试问题?


问题答案:

尝试以下方法:

print_r($sth->errorInfo());

在准备之前添加以下内容:

$this->pdo->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING );

这将更改PDO错误报告类型,并在出现PDO错误时使其发出警告。尽管应该设置您的errorInfo,但它应该可以帮助您进行跟踪。



 类似资料:
  • 问题内容: 这个问题已经在这里有了答案 : PDO错误:“ SQLSTATE [HY000]:常规错误”更新数据库时 (2个答案) 2年前关闭。 我收到此错误: ..每当我使用PDO执行此代码时: 我不知道为什么会这样。我已经检查了查询,但根本找不到任何错误。 问题答案: 这是发生了什么: 您正在尝试获取UPDATE查询。您不能这样做,因为UPDATE查询不会返回值。如果您想知道该查询影响了多少行

  • 问题内容: 我收到了这个令人讨厌的错误,尽管我知道为什么要得到它,但我终生无法找到解决方案。 查询包含占位符()。但是要添加这些LIMIT占位符,我需要使用手动方法(),因为否则引擎会将它们转换为字符串。 我没有收到无效的参数数量错误,因此所有占位符均已正确绑定(我认为)。 查询: 除最后两个LIMIT(我与之手动绑定)外,所有占位符值均位于$ criteria中。 问题答案: 您不能使用 和 。

  • 我想建立一个帖子和评论系统。 帖子运行良好,但评论无效 PHP错误:致命错误:C:\xampp\htdocs\index.php:133堆栈跟踪中带有无效数据源名称的未捕获异常“PDOExc0019”:#0 C:\xampp\htdocs\index.php(133): PDO- 这是表的元素。请帮忙。

  • 这个问题已经问了好几次了,我跟着这些问题试图解决这个问题。该项目成功构建并运行了几个小时前我关闭了电脑。这个问题让我抓狂,请帮助。 留言: build.gradle: 请帮忙。

  • 在本章中,我们将讨论在使用SLF4J时获得的各种错误消息或警告以及这些消息的原因/含义。 无法加载类“org.slf4j.impl.StaticLoggerBinder”。 这是在类路径中没有提供SLF4J绑定时引起的警告。 以下是完整的警告 - 要解决此问题,需要添加任一日志框架绑定。本教程上一小节对此进行了解释说明。 注 - 这种情况发生在SLF4J的版本中,介于1.6.0和1.8.0-bet

  • 我正在使用Eclipse将json隐藏到Java中的字符串中。但我一直收到: 有人能告诉我json有什么问题吗?我如何改变它使其有效?我对java和json相当陌生,如果我错过了任何应该包括的细节,我很抱歉。