是否可以通过打开第二个连接来解决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#637Resource id#639
DbManager是旧的梨数据访问层
注意:我本来会使用一个mysql_unbuffered_query标签,但是我最近打开了一个让我置于“创建新标签权限”之下的赏金。
答案 0 :(得分:1)
关于PMV的建议我正在写这个答案。总之,即使它们报告了不同的资源ID,也是使用相同连接的不同数据库类的问题。请参阅问题的评论以获取更多信息。