目前,我在我的项目中使用ADODB库来与数据库集成。我想迁移到PDO,但是我有一个关于协商的问题。
目前,我使用ADODB执行一个查询,并使用MoveFirst()方法多次使用该集合的行。
示例:
//I consultation
$rs = $conn->execute('select * from mytable');
//Loop through the results
while(!$rs->EOF) {
echo $rs->fields('name');
$rs->MoveNext();
}
//I move the "pointer" to the beginning of the list
$rs->MoveFirst();
//I can go over the results without needing to re-select
while(!$rs->EOF) {
echo $rs->fields('name');
$rs->MoveNext();
}
我想知道在PDO中是否有类似的方式,所以我不需要再次运行查询。这样做的目的是避免不必要的查询频繁出现,因为它们使用相同的查询。
发布于 2011-12-20 18:31:03
我不知道为什么要在数据库连接上多次循环结果集。当您只需要第一次检索并保存数据时,为什么还要再次从网络中提取数据呢?但是您要寻找的是一个可滚动的游标,它不受mysql支持。至少不要通过任何PHP/MySQL驱动程序。您还可能希望查看由PDO支持的缓冲/非缓冲查询。
PDO::CURSOR_SCROLL http://www.php.net/manual/en/pdo.prepare.php
https://stackoverflow.com/questions/8580021
复制相似问题