是否可以通过打开第二个连接来绕过 mysql_unbuffered_query() 一次运行一个查询的限制?
例如,下面的代码给我错误:
mysql_select_db():调用的函数没有首先从先前的无缓冲查询中获取所有行
$feedData = mysql_unbuffered_query($sql, $this->_unbufferedDbManager->db->connection);
while ($record = mysql_fetch_assoc($feedData)) {
File::fputcsv($this->_fileHandle, $record, $this->delimiter, $this->enclosure);
$sql = "UPDATE transactions
SET feed_transmit_date = '$this->today'
WHERE transaction_id = " . $record['transaction_id'];
$this->dbManager->DbQuery($sql);
print_r($this->_unbufferedDbManager->db->connection);
print_r($this->dbManager->db->connection);
}
最后输出的两个 print_r(): 资源 ID #637资源 ID #639
DbManager 是一个古老的 pear 数据访问层
注意:我本来可以使用 mysql_unbuffered_query 标签,但我最近开通了一项赏金,使我低于“创建新标签特权”。
最佳答案
根据 PMV 的建议,我正在写这个答案。总之,这是不同数据库类使用相同连接的问题,即使它们报告了不同的资源 ID。有关更多信息,请参阅问题的评论。
关于php - 使用 mysql_unbuffered_query 的多个连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5984692/