我正在尋求只對某些請求執行無緩衝的查詢。在pdo
使用PDO爲一個請求執行無緩衝的查詢
$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文檔,並根據它,我們必須繼續這樣做查詢緩衝:
在MySQL我這樣做
$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實例無緩衝?
您是否檢查過,爲PDOStatement設置此實用程序會導致未緩衝的查詢?我嘗試了不同的相同的東西,它的工作,但它沒有任何影響。 當我設置PDO對象的屬性時,唯一真正得到未緩衝查詢的時間。 – Ragas