在使用mysqli_multi_query函数执行多个SQL查询时,我们可以使用mysqli_more_results和mysqli_next_result函数来等待和解析结果。
下面是一个示例代码,展示了如何等待和解析mysqli_multi_query的结果:
<?php
// 创建数据库连接
$mysqli = new mysqli("localhost", "username", "password", "database");
// 检查连接是否成功
if ($mysqli->connect_errno) {
die("连接数据库失败: " . $mysqli->connect_error);
}
// 执行多个SQL查询
$query = "SELECT * FROM table1; SELECT * FROM table2; SELECT * FROM table3";
if ($mysqli->multi_query($query)) {
do {
// 处理当前结果集
if ($result = $mysqli->store_result()) {
// 处理结果集中的数据
while ($row = $result->fetch_assoc()) {
// 处理每一行数据
}
// 释放结果集
$result->free();
}
} while ($mysqli->more_results() && $mysqli->next_result());
}
// 关闭数据库连接
$mysqli->close();
?>
在上述示例中,我们使用do-while循环来处理每个结果集。首先,我们通过$mysqli->store_result()方法获取当前结果集,然后使用while循环遍历结果集中的每一行数据进行处理。最后,通过$result->free()方法释放结果集。
这样,我们就可以等待和解析mysqli_multi_query的结果了。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云