【发布时间】:2012-04-26 09:57:38
【问题描述】:
我已将这个问题分解为本质,但仍然有问题。
当我尝试使用 fetch_all 获取存储过程的结果时,结果按预期返回到数组,但随后的 mysqli 调用抛出“命令不同步”错误。
我什至尝试将我的存储过程简化为...
CREATE PROCEDURE testp()
BEGIN
SELECT * FROM tbl
END
我把桌子做得很小,10 行 3 列。
我使用下面的PHP
$query = "CALL testp()";
$result = $db->query($query);
$rows = $result->fetch_all(MYSQL_ASSOC);
$result->free();
print_r($rows);
$query = "SELECT * FROM tbl WHERE id = ?";
$stmt = $this->db->prepare($query);
echo $this->db->error;
$stmt->close();
Echo 的“命令不同步;您现在无法运行此命令” 并抛出 致命错误:在非对象上调用成员函数 close()
$rows 按预期输出
有什么想法吗?
【问题讨论】:
标签: php stored-procedures mysqli