您的位置:首页 > 数据库 > MySQL

C mysql (C API Commands out of sync; you can't run this command now)

2014-03-25 11:51 411 查看
错误出现在当一个用户使用查询,另一个用户再使用此sql连接进行查询的时候;

原因是因为上一次使用此sql连接进行查询时没有将所有的结果集给释放掉,在所有使用此sql连接进行查询的地方将所有的结果集给释放掉,正确的做法如下

MYSQL_RES    *result_ptr = mysql_store_result(tpSqlConn);
if (result_ptr)
{
MYSQL_ROW    row = mysql_fetch_row(result_ptr);
if (row)
{
rtn_str = row[0];
}

mysql_free_result(result_ptr);

// 释放当前查询的所有结果集. 否则下次查询将会出错.
while (!mysql_next_result(tpSqlConn))
{
result_ptr = mysql_store_result(tpSqlConn);
mysql_free_result(result_ptr);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: