我已經創建了一個PHP腳本,可以從名稱創建徽標,這些名稱來自具有數千條記錄的MySQL數據庫。PHP:一次獲取一條MySQL記錄
創建徽標每個記錄最多可能需要幾秒鐘,因此整個過程需要幾天時間。 我現在編寫的腳本事先獲取所有數據,然後開始製作徽標。 但是,當腳本正在運行時,尚未處理的記錄中的數據可能會更改!
如何在遍歷結果集的同時在處理下一條記錄時仍能獲取最新數據?
這是我現在使用:
$sql = "SELECT * FROM names";
$mysqli = new mysqli($server, $user, $password, $database);
if ($mysqli->multi_query($sql)) {
do {
if ($result = $mysqli->store_result()) {
while ($record = mysqli_fetch_assoc($result)) {
$records[] = $record
}
$result->close();
}
} while ($this->DB->next_result());
}
foreach($records as $record) {
//create the logo from $record['name']
}
我會建議一個類似的東西,但添加額外的字段「完成」更新爲true時,操作完成。然後一個新的SELECT與LIMIT 1和一個WHERE done = false。應該這樣做,我想。 – Erik 2011-04-28 21:18:01