如果MySQL查询失败,PDO的`rowCount()`会返回什么?

时间:2013-10-23 13:03:40

标签: php mysql pdo

我正在使用PDO和MySQL编写一些代码,需要非常肯定 UPDATE是否成功。

我希望更新1行,并且我使用PDO的rowCount()方法检查返回值为1.如果1行或0行受到影响("已更新"或"没有更新"),我知道该怎么做。

这可能以任何方式出错吗?例如,如果查询无法执行,它会返回什么?如果数据库以某种方式损坏或崩溃怎么办?

2 个答案:

答案 0 :(得分:0)

如果查询失败,则execute将返回false。如果成功则比返回值会影响行数。它可以是> = 0。不要使用rowCount检查更新是否发生或因为它应该总是返回一行,除非查询失败(由于错误)

sqrt(-1) loves php

答案 1 :(得分:-1)

在正确编写的应用程序中,它永远不会被执行 - 触发异常并且处理程序只会杀死整个脚本。