1 回答
TA貢獻1805條經驗 獲得超9個贊
插入 3000 行并不是很多,如果操作正確的話,應該不會花費太多時間。您必須記住,您應該始終使用準備好的語句。您可以使用不同的數據多次執行同一語句。當你將整個事情包裝在一個事務中時,它應該執行得非常快。
// Start transaction
$mysqli->begin_transaction();
// prepared statement prepared once and executed multiple times
$insertStatement = $mysqli->prepare('INSERT INTO crbsms_queue(sender, phone, message, user_id, time_submitted) VALUES(?,?,?,?,?)');
$insertStatement->bind_param('sssss', $sender, $phone, $message, $user_id, $date);
foreach ($phones as $phone) {
? ? $insertStatement->execute();
}
// Save and end transaction
$mysqli->commit();
如果這不能提高性能,則意味著您在其他地方遇到了問題。您需要分析和調試您的應用程序以找出問題的根源。
附注:請記住啟用 mysqli 錯誤報告,否則您的事務可能無法正常運行。
- 1 回答
- 0 關注
- 113 瀏覽
添加回答
舉報
