1

MySQL 错误:命令不同步;你现在不能运行这个命令

当我每次尝试多次执行 SQL 过程时,都会出现上述错误。

我发现它与“商店结果”有关,所以我一直试图弄清楚它,但我还没有成功。

这是我的PHP代码:

$query = "CALL GetObjectsValue(".$FormID.")";

if( $res = $mysqli->query($query) )
{
    $mysqli->store_result();

    while ($row = $res->fetch_assoc()) 
    {

        ...

    }
    $res->free();
}
4

2 回答 2

0

出于某种原因,对于存储过程中的记录集,必须使用 next_result() 命令对其进行循环。如果记录集直接来自 SQL 查询 (SELECT) 的执行,则情况并非如此。

$query="CALL GetObjectsValue($FormID)";
if($res=$mysqli->query($query))
{
  do
  {
    $row = $res->fetch_assoc()
    ...
  }
  while($mysqli->next_result()); //loop through recordset

  $res->free();
}
于 2015-05-10T11:07:44.080 回答
-2

改变

$query = "CALL GetObjectsValue(".$FormID.")";     

$query = "CALL GetObjectsValue("$FormID")";  

注意$FormID没有点。

于 2013-10-16T15:23:36.653 回答