mongodb c driver使用经验
连接数据库
获取mongoc_cursor_t* cursor
循环获取数据,存入bson_t
const bson_t *doc = nullptr;
while (mongoc_cursor_next(cursor, &doc))
获取迭代器
上面只是获取了对应的文本,需要设置成迭代器才能使用
bson_iter_t iter;
if (bson_iter_init(&iter, doc))
bson_iter_init
的作用就是把doc(bson_t)的内容转成iter(bson_iter_t)
查询key是否存在
if (bson_iter_find(&iter, "xxx"))
查询的时候需要注意,一是必须按照存在mongo数据库中的顺序,如果顺序颠倒,后续会查询失败,也就是说当前索引不能回退,比如abc,如果你先查b是可以的,再查a就会报错,如果不查a,继续查c也是可以的;二是如果bson_iter_find
返回了false,不管是查询顺序颠倒,还是查询了不存在的key,iter都会失效,无法再使用,需要重新初始化。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏
2022-06-07 删除windows资源管理器左边栏图标