如何使用PDO编辑最大查询大小?

时间:2016-09-28 16:58:20

标签: php mysql pdo

我有一个很长的查询(3MB)来执行,我使用PDO来执行此操作但我遇到了问题:查询太长了。

我已经将MySQL变量max_allowed_pa​​cket更改为100MB,但它没有解决问题,所以我想这是因为PDO。

我看到this topic,但MYSQL_ATTR_MAX_BUFFER_SIZE似乎不存在: 致命错误:未定义的类常量'MYSQL_ATTR_MAX_BUFFER_SIZE'

我该如何解决?

1 个答案:

答案 0 :(得分:0)

如PDO文档中所述,在针对mysqlnd编译时,不支持MYSQL_ATTR_MAX_BUFFER_SIZE。#34; (http://php.net/manual/en/ref.pdo-mysql.php
因为mysqlnd是自PHP 5.3.0以来的标准mySQL库,所以默认情况下不能使用此常量。切换到另一个库应该可以解决问题。 要执行此操作,请取消注释php.ini文件中的以下任一行:

  • `Windows上的extension = php_pdo_mysql.dll`
  • `Linux / Mac上的extension = php_pdo_mysql.so

然后重启网络服务器,它就可以了!

检查this答案以获得更详尽的解释。