3

我目前正在执行以下操作:

$mysqli = new mysqli($server, $username, $password, $database);

$mysqli->multi_query($multiUpdates);
while ($mysqli->next_result()) {;} // Flushing results of multi_queries
$mysqli->query($sqlInserts);

有没有更快的方法来转储结果?

我不需要它们,只想运行下一个查询,但是出现错误:

命令不同步;你现在不能运行这个命令

问题是while ($mysqli->next_result()) {;}大约需要 2 秒,这对于我不想要的东西来说是一种浪费。

有没有更好的解决方案?

4

1 回答 1

3

找到了一个更快的解决方案,在更新 500 条记录和插入 500 条记录时可以节省大约 2-3 秒。

function newSQL() {
    global $server, $username, $password, $database;
    $con = new mysqli($server, $username, $password, $database);
    return $con;
}

$mysqli = newSQL();
$mysqli->multi_query($multiUpdates);
$mysqli->close();

$mysqli = newSQL();
$mysqli->query($sqlInserts);
$mysqli->close();

不知道它有多实用,但对于速度来说效果很好。

于 2012-08-14T03:06:14.993 回答