本文主要是介绍MySQL cAPI踩下的坑,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.使用mysql_real_query函数查询之后没有对结果集进行释放
MySQL中,如果查询之后没有释放结果集,会导致MySQL无法进行下一步操作
使用mysql_errno获取错误码:2014
正确做法
//执行查询
mysql_real_query(mysql_, stmt_str.c_str(), length);
//获取结果集
MYSQL_RES *res = mysql_store_result(mysql_);
// 释放结果集以便下一步的mysql插入操作
mysql_free_result(res);
2.mysql_field_count 和 mysql_num_fields 是两个不同的 MySQL 函数
- mysql_field_count()
用于获取上一条与指定连接标识符关联的查询所取得的列数。
返回的是整个查询结果集的列数,而不是特定的行的列数。
通常用于检查查询返回的列数是否符合预期。 - mysql_num_fields()
用于获取结果集中字段的数目,即获取一行中的列数。
需要传递一个结果集标识符作为参数。
返回的是结果集中当前行的列数,而不是整个结果集的列数。
这篇关于MySQL cAPI踩下的坑的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!