存储过程里面语句:
  select @a:=fund_id from test_tab2 where user_id = userid;  update test_tab1 set info1=@a,info2 = HOUR(now())*10000 +MINUTE(now())*100+SECOND(now()) where user_id = userid;执行一次mysql_query(&mysql.mydata,"CALL tst_reg(1,'12:00:22')");后再次执行时提示错误:
Commands out of sync; you can't run this command now
如何解决这个问题?据网上搜索,执行mysql_free_result(result); 照常出错。能在存储过程中释放记录集吗?

解决方案 »

  1.   

    当然,因为是循环执行的测试程序,而且去掉select语句,1000次都没问题
      

  2.   

    自己解决了,这种方式就不用释放记录集了:select fund_id into @a from test_tab2 where user_id = userid;
      

  3.   

    http://hi.baidu.com/netpet/item/51a8a37806488011d1dcb325
    给楼至推荐一篇文章,写的不错。