【问题标题】:PHP MySQLi Finding an Unclosed Prepared StatementPHP MySQLi 查找未关闭的准备好的语句
【发布时间】:2012-04-14 01:30:00
【问题描述】:

mySQLi bind_param 方法抛出错误“命令不同步”。我猜这是来自尚未正确关闭的perpared statment。有什么方法可以通过连接查看未关闭的准备好的语句,还是我应该去挖掘?

【问题讨论】:

    标签: php mysqli prepared-statement


    【解决方案1】:

    看看这个:

    C.5.2.14。命令不同步 如果您得到命令不同步;你 现在无法在您的客户端代码中运行此命令,您正在调用客户端 功能顺序错误。

    这可能发生,例如,如果您使用 mysql_use_result() 并且 在调用 mysql_free_result() 之前尝试执行新查询。 如果您尝试执行两个返回数据的查询,也会发生这种情况 中间不调用 mysql_use_result() 或 mysql_store_result()。

    参考:http://dev.mysql.com/doc/refman/5.0/en/commands-out-of-sync.html

    【讨论】:

    • 我找到了导致冲突的代码,但仍然不太明白为什么。使用 fetch_all 方法调用 mysql 存储过程的查询方法很简单,以提取关联数组。我不确定为什么这会导致 bind_param 函数不起作用。 bind_param 函数正在会话处理程序中使用?存储过程是否会锁定连接?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-22
    • 2012-12-01
    • 1970-01-01
    相关资源
    最近更新 更多