Ben Zend Framework 1.7.2, MySQL ve MySQLi PDO adaptörü kullanıyorum. Ben belirli bir eylem sırasında birden saklanan prosedürleri aramak istiyorum. Windows üzerinde birden çok saklı yordamları çağıran bir sorun olduğunu tespit ettik. Eğer denerseniz, aşağıdaki hata iletisini alabilirsiniz:
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.
Ben sadece bir saklı yordam için her görüşmeden sonra veritabanı bağlantısını kapatmak olabilir, bu soruna geçici bir çözüm bulundu:
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
//If on windows close the connection
$db->closeConnection();
}
Bu benim için iyi çalıştı, ancak, şimdi bir işlem sarılmış birden çok saklı yordamları çağırmak istiyorum. Bu açık işlemin geri neden olur beri Tabii ki, bağlantıyı kapatmadan, bu durumda bir seçenek değildir. Soruna bu sorunu ve / veya işi nasıl düzeltebilirim Herhangi bir fikir.