mysql C API 多语句插入数据有关问题

mysql C API 多语句插入数据有关问题

mysql C API 多语句插入数据问题

打开连接时用mysql_real_connect(),传递参数CLIENT_MULTI_STATEMENTS以支持多语句查询

每执行mysql_query()来插入数据后,调用以下函数来清空返回结果集,以避免2014错误

void clear_result(MYSQL* conn)

{

if(!conn)

return;

do

{

MYSQL_RES* res = mysql_store_result(conn);

mysql_free_result(res);

}

while(0==mysql_next_result(conn));

}

但为什么一个查询里有三条insert into语句时,这个函数就会莫明其妙的崩掉,不明白

用gdb跟踪了好多遍,发现最后一遍循环时,调用mysql_next_result()后,conn这个结构里的数据全部都被破坏了

都是无效地址,请高手帮帮忙



探讨

do

{

MYSQL_RES* res = mysql_store_result(conn);

mysql_free_result(res);

}

while(0==mysql_next_result(conn));

}

mysql C API 多语句插入数据有关问题

相关文章:

你感兴趣的文章:

标签云: