数据库异常应该致命吗?

时间:2012-12-09 23:10:49

标签: php error-handling pdo

我正在为我的网站中的数据库调用编写单例包装器。

从PDO中捕获异常时,我应该终止脚本还是将其视为警告?

有没有办法确定PDO引发的异常的严重性?例如,是否有相当于PHP的通知?

1 个答案:

答案 0 :(得分:1)

不,数据库错误不应该是致命的并且会结束执行 - 如果不是你的规范告诉你的话。

正如@PeeHaa所说,错误应该抛出异常而不是杀死脚本。某些驱动程序可能默认使用此选项,但通常使用MySQL驱动程序时,您需要在连接时设置错误模式。

可能建议您允许抛出异常,以便在主过程失败时捕获错误并执行替代措施。

try {
    $sthmt->execute();
}
catch (Exception $error) {
    // Opps, the statement failed, revert or initiate error procedure
}