调用存储过程发生Commands out of sync错误
发布于:2022-01-17 09:50:54
#1 verderer
通过findsql调用存储过程,然后再访问数据库,无论什么语句都报错,麻烦斑竹看看有啥解决办法没?执行错误: Commands out of sync; you can't run this command now
在网上尝试用mysql_next_result 和mysql_store_result来处理,但是访问报错
大家碰到过这个情况没
2010-08-02 16:35:00
#2 jake
这种我没遇过,这里我只能说说怎么获取mysql的链接资源句柄。
$a = spClass('lib_guestbook');
那么,mysql_系列函数的mysql链接资源句柄是$a->_db->conn;
你可以取得这个链接资源句柄,然后用于执行mysql_系列函数,比如说执行mysql_use_result()
2010-08-02 18:03:29
#3 verderer
我直接在mysql.php文件里面改都不行,不识别
2010-08-02 18:26:17
#4 jake
这样,建议你直接使用PHP的mysql_系列函数来试试
http://cn.php.net/manual/en/function.mysql-connect.php直接使用php.net上面的示例代码,来测试你的SQL语句。我想,如果这样都会出错的话,那么就要检查一下你的存储过程和SQL语句有无问题了。
另外你也可以通过其他的mysql客户端来测试。
其实speedphp框架内的mysql链接很简单,仅是使用了mysql_系列函数而已。
2010-08-02 18:33:05
#5 hanyegudeng
今天我也遇到了这样的问题,sp版本是3,1,89的。出错提示:
select count(id) as count from a
执行错误: Commands out of sync; you can't run this command now。
lz是怎么解决的呢?
2012-02-05 14:22:59
#6 hanyegudeng
问题解决了。
方法如下:
执行完成存储过程后关闭数据库连接,在执行下面的数据库操作的时候重新创建连接。
这个方法不好,如果存储过程多应该会有问题。
谁有好的方法贴出来,大家共享下
2012-02-05 17:35:05