我希望仅对某些请求进行无缓冲查询。
在 mysql 中,我正在这样做:
$req = mysql_unbuffered_query('SELECT * FROM forum_topics
ORDER BY (topic_id/topic_stick) DESC, topic_last_post DESC');
while($data = mysql_fetch_assoc($req)) {
// display results...
}
我查看了 php doc,根据它,pdo
我们必须以这种方式进行无缓冲查询:
$pdo = new PDO("mysql:host=localhost;dbname=world", 'my_user', 'my_pass');
$pdo->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false);
$uresult = $pdo->query("SELECT Name FROM City");
if ($uresult) {
while ($row = $uresult->fetch(PDO::FETCH_ASSOC)) {
echo $row['Name'] . PHP_EOL;
}
}
但是是否可以仅对“forum_topics”表结果进行无缓冲而不将所有 pdo 实例设置为无缓冲?