TP5 V5.1.13+ 和 TP6 跨库事务(XA事务)的问题

浏览:1068 发布日期:2019/12/17
5.0.0 - 严重 - 已处理
TP5使用XA事务会报以下错误:
[HY000]SQLSTATE[HY000]: General error: 2014 Cannot execute queries while other unbuffered queries are active. Consider using PDOStatement::fetchAll(). Alternatively, if your code is only ever going to run against mysql, you may enable query buffering by setting the PDO::MYSQL_ATTR_USE_BUFFERED_QUERY attribute.

解决办法:
项目根目录\thinkphp\library\think\db\connector\Mysql.php文件
startTransXa(),prepareXa(),commitXa(),rollbackXa()
这4个方法将$this->execute改成$this->linkID->exec




TP6使用XA事务会报以下错误:
Call to undefined method PDO::execute()

解决办法:
项目根目录\vendor\topthink\think-orm\src\db\connector\Mysql.php文件
startTransXa(),prepareXa(),commitXa(),rollbackXa()
这4个方法将$this->linkID->execute改成$this->linkID->exec
评论(
后面还有条评论,点击查看>>