gpt4 book ai didi

php - 从 mysqli 迁移到 PDO 的 2006 错误代码映射

转载 作者:搜寻专家 更新时间:2023-10-31 21:24:06 25 4
gpt4 key购买 nike

我正在将使用 mysqli 连接到 mysql 数据库的 PHP 代码转换为使用 PDO 连接到 mysql 数据库的 PHP 代码。

有没有SQLSTATE这相当于错误代码 2006在 mysqli 中?

因为我的一段代码是这样写的:

switch($this->_dbi->errno){
case 2006:
$this->close();
throw new Exception();
break;
}

如何使用 PDO 重写此代码?

SQLSTATEPDO::errorCode的返回值.

错误 2006(CR_SERVER_GONE_ERROR) 表示 MySQL 服务器已经消失

最佳答案

您可以使用 PDO::errorInfo 的数组.你会得到一个如下所示的数组:

Array
(
[0] => HY000
[1] => 1
[2] => near "bogus": syntax error
)
  • 0:这与 PDO::errorCode 上的值相同.
  • 1:错误号。不同的数据库提供商不同,但这里是您的错误编号 2006。
  • 2:错误信息/描述。

您的示例如下所示:

switch ($pdo->errorInfo()[1]) {
case 2006:
$this->close();
throw new Exception();
break;
}

关于php - 从 mysqli 迁移到 PDO 的 2006 错误代码映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40081195/

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