MySQL cAPI踩下的坑

1.使用mysql_real_query函数查询之后没有对结果集进行释放

MySQL中,如果查询之后没有释放结果集,会导致MySQL无法进行下一步操作

使用mysql_errno获取错误码:2014

正确做法

c 复制代码
//执行查询
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()
    用于获取结果集中字段的数目,即获取一行中的列数。
    需要传递一个结果集标识符作为参数。
    返回的是结果集中当前行的列数,而不是整个结果集的列数。
相关推荐
打不了嗝 ᥬ᭄26 分钟前
【MySQL】数据类型以及库和表的操作
数据库·mysql
ohoy8 小时前
mysql 30天自动补0
数据库·mysql
大学生资源网9 小时前
java毕业设计之儿童福利院管理系统的设计与实现(源码+)
java·开发语言·spring boot·mysql·毕业设计·源码·课程设计
利剑 -~10 小时前
mysql面试题整理
android·数据库·mysql
程序员卷卷狗10 小时前
Redis事务与MySQL事务有什么区别?一文分清
数据库·redis·mysql
qq_124987075312 小时前
重庆三峡学院图书资料管理系统设计与实现(源码+论文+部署+安装)
java·spring boot·后端·mysql·spring·毕业设计
大学生资源网12 小时前
java毕业设计之“知语”花卉销售网站的设计与实现源码(源代码+文档)
java·mysql·毕业设计·源码·springboot
<花开花落>14 小时前
Cursor 的 MCP 应用:mysql-mcp-server
mysql·cursor·mcp
Boilermaker199214 小时前
[MySQL] 设计范式与 E-R 图绘制
mysql·oracle·设计规范
卡尔特斯14 小时前
MySQL 字符集与排序规则总结
mysql