php mysql、存储过程和事务问题
我对php mysql以及存储过程和PDO事务的使用存在问题 我的代码:php mysql、存储过程和事务问题,php,mysql,transactions,Php,Mysql,Transactions,我对php mysql以及存储过程和PDO事务的使用存在问题 我的代码: $conn_admin_diag = $db_connection_manager->getConnectionByName(BASE_ADMIN_DIAG); $stmt = $conn_admin_diag->getPdo()->prepare('CALL check_etat_retirable(?)', array(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY =>
$conn_admin_diag = $db_connection_manager->getConnectionByName(BASE_ADMIN_DIAG);
$stmt = $conn_admin_diag->getPdo()->prepare('CALL check_etat_retirable(?)', array(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true));
$stmt->bindParam(1, 3, PDO::PARAM_STR|PDO::PARAM_INPUT_OUTPUT, 10000);
$stmt->execute();
$problemes = $stmt->fetchAll();
$conn_admin_diag->getPdo()->beginTransaction();
// some code after wich works ...
当我调用没有存储过程的代码时,我没有任何问题
错误是:
SQLSTATE[HY000]:一般错误:当其他未缓冲查询处于活动状态时,2014无法执行查询。考虑使用PDOStatement::fetchAll()。或者,如果您的代码只在mysql上运行,您可以通过设置PDO::mysql\u ATTR\u USE\u BUFFERED\u query属性来启用查询缓冲。
其他一些信息:
- php版本:5.6.2-1
- mysql版本为:5.5.40
PHP5.3.3-7+squeeze19进行了一些测试,我也遇到了同样的问题