【发布时间】:2021-05-15 04:53:42
【问题描述】:
我执行存储过程的查询,其中有 3 个选择结果
select _id a;
select 2 a;
select 3 a;
我有这样的mysqli来调用存储过程
$i = 0;
if ($server->connection->query("CALL sp_select(1)", MYSQLI_USE_RESULT)) {
printf("res\n");
do {
$i++;
printf("$i.do\n");
if ($result = $server->connection->store_result()) {
printf("$i.store\n");
$data = $result->fetch_all(MYSQLI_ASSOC);
$this->data[] = $data;
$result->free_result();
printf("$i.free\n");
}
if ($server->connection->more_results()) {
printf("$i.more\n");
}
} while ($server->connection->next_result());
echo json_encode($this->data);
}
该函数无法存储第一个结果。我只得到了第二和第三个结果。 为什么我无法存储第一个结果?
【问题讨论】: