• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

mysql报错commands out of sync you can't run this command now解决

武飞扬头像
Luke
帮助14300

MySQL带输出参数的存储过程执行完成后系统会自动执行一条select @outValue=out参数 的语句,

 

1 如果在mysql的存储过程中存在两个及以上独立select语句会造成此问题

原因是php的mysql_query()只能用于一个结果集,因为存储过程中多个独立select语句都要给mysql_query()赋结果集,便导致php的后续出错。

mysql_query($sql)

2 MySQL存储过程带有输出参数且使用了独立select语句也会造成此问题

这是因为MySQL带输出参数的存储过程执行完成后会由系统自动执行一条select @outValue=out参数 的语句,此时便有两条及以上独立

select语句要给只能用于一个结果集的php的mysql_query()赋结果集,使后续mysql_query()出错。

解决办法就是MySQL存储过程中不要使用独立select语句,

或者使用mysqli的方式来执行。

或者在执行完此存储过程后直接关闭mysql,在下一个连接地方重新连接数据库即可

mysql_close($mysql);

 

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanecgh
系列文章
更多 icon
同类精品
更多 icon
继续加载