通过将插入内容放入事务中,您应该能够大大提高速度。您还可以将您的prepare和bind语句移出循环。
$array = array("array", "with", "about", "2000", "values");$query = "INSERT INTO table (link) VALUES (?)";$stmt = $mysqli->prepare($query);$stmt ->bind_param("s", $one);$mysqli->query("START TRANSACTION");foreach ($array as $one) { $stmt->execute();}$stmt->close();$mysqli->query("COMMIT");
编辑:
我在Web服务器上经过10,000次迭代测试了此代码。
没有事务:
226 seconds.有事务:
2 seconds.或a
two order of magnitude speedincrease,至少对于该测试。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)