php mysqli是否等待“multi\u query”查询完成?

dtcbnfnu  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(274)

我正在导入一个 mysqlsqldump 如下所示。

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

我已经在这里精简了代码,只关注问题。
现在一切都正常工作了,只是我在这个命令后面有一个查询。
并且该查询没有找到在从上一步导入之后应该存在的表。
然后我意识到,使用上述方法的导入过程似乎是异步的,而且在php完成执行很久之后,导入似乎还在继续。一旦导入完成,我就可以手动执行相同的查询,该查询先前返回的错误是“某某” table.column 不存在”。
那么,有没有办法等到最后呢 multi_query 进程完成,然后在php中继续执行?

1cklez4t

1cklez4t1#

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

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

相关问题