使用mysql_unbuffered_query的多个连接

时间:2011-05-12 21:28:46

标签: php mysql unbuffered-queries

是否可以通过打开第二个连接来解决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标签,但是我最近打开了一个让我置于“创建新标签权限”之下的赏金。

1 个答案:

答案 0 :(得分:1)

关于PMV的建议我正在写这个答案。总之,即使它们报告了不同的资源ID,也是使用相同连接的不同数据库类的问题。请参阅问题的评论以获取更多信息。