有一些PHP代码:

// Fetch PDO instance
    $pdo = $this->conn->getPdo();

    // Call procedure that checks is user credentials is ok
    $stmt = $pdo->prepare('CALL Users_CheckLogin(:username, :password);');

    $passw = md5($credentials['passw']);

    $stmt->bindValue(':username', $credentials['username']);
    $stmt->bindValue(':password', $passw);

    // Execute procedure
    $stmt->execute();

    $result = $stmt->fetchAll(PDO::FETCH_CLASS, 'ArrayObject');
    $stmt->closeCursor();

由于某些原因,此代码在此处不起作用并返回:

SQLSTATE [HY000]:常规错误:2014在其他未缓冲的查询处于活动状态时无法执行查询 . 考虑使用PDOStatement :: fetchAll() . 或者,如果您的代码只是针对mysql运行,则可以通过设置PDO :: MYSQL_ATTR_USE_BUFFERED_QUERY属性来启用查询缓冲 .

我也搜索了这个错误,并没有找到任何解决方案 . 所以也许这里有人可以解释我的问题是什么?我没有paralels查询,只有我的程序,在这个程序中我执行额外的查询所以也许这是一个原因,但那时它是pdo中的巨大错误 . 这个过程调用在mysql管理器和mysqli中也可以 .