php-mysqli 等待 'multi_query' 查询完成?

php-mysqli wait for the 'multi_query' queries to complete?

我正在导入一个 mysqlsqldump 如下。

$command = file_get_contents($dumpfile);
$conn->multi_query($command);
while (mysqli_next_result($conn)); // Flush out the results.

我已经精简了这里的代码,只关注问题。

现在一切正常,除了我在这个命令后有一个查询。

并且该查询未找到在上一步导入后应该存在的表。

然后我意识到使用上述方法的导入过程似乎是异步的,并且在 php 完成执行很久之后导入似乎还在继续。一旦导入完成,我就可以手动执行相同的查询,该查询之前返回错误 "so and so table.column doesn't exist".

那么,有没有办法等到 multi_query 过程完成,然后在 php 中继续执行?

好吧,我的错,实际上,以下行 确实 使 php 等待处理完成,只是我传递了一个不同的连接句柄.

while (mysqli_next_result($conn)); // Flush out the results.