mongodb数组写操作
2015-06-23 17:10
381 查看
mongodb中一条document格式为:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201506/23/cca7a15a4282cde01c1e1155096c5ee3)
先想给数组jobs添加一个元素,如{"job_name":"name1", "finish_time":1435043559}
C++代码如下:
shared_ptr<MongoSession> session = MongoSessionFactory::GetSession();
BSONObjBuilder condition;
condition.append("finish_date", finish_date);
BSONObjBuilder rec;
rec.append("job_name", job_name);
rec.append("finish_time", finish_time);
BSONObjBuilder recs;
recs.append("jobs", rec.obj());
BSONObjBuilder set;
set.append("$push", recs.obj());
session->get().update(config.wind_db + ".scheduler_job_finish_time", mongo::Query(condition.obj()), set.obj());
其中数组修改器$push作用是给数组添加元素,且如果数组不存在时会自动创建.
先想给数组jobs添加一个元素,如{"job_name":"name1", "finish_time":1435043559}
C++代码如下:
shared_ptr<MongoSession> session = MongoSessionFactory::GetSession();
BSONObjBuilder condition;
condition.append("finish_date", finish_date);
BSONObjBuilder rec;
rec.append("job_name", job_name);
rec.append("finish_time", finish_time);
BSONObjBuilder recs;
recs.append("jobs", rec.obj());
BSONObjBuilder set;
set.append("$push", recs.obj());
session->get().update(config.wind_db + ".scheduler_job_finish_time", mongo::Query(condition.obj()), set.obj());
其中数组修改器$push作用是给数组添加元素,且如果数组不存在时会自动创建.
相关文章推荐
- 分享微信开发Html5轻游戏中的几个坑
- 使用C++实现JNI接口需要注意的事项
- PHP添加yaf xhprof mongodb 同理
- mongodb安装
- 关于指针的一些事情
- 如何在 Ubuntu 上安装 MongoDB
- c++ primer 第五版 笔记前言
- share_ptr的几个注意点
- Lua教程(一):在C++中嵌入Lua脚本
- perl操作MongoDB报错undefined symbol: HeUTF8解决方法
- Lua教程(二):C++和Lua相互传递数据示例
- C++联合体转换成C#结构的实现方法
- C++编写简单的打靶游戏
- C++变位词问题分析
- C/C++数据对齐详细解析
- C++基于栈实现铁轨问题
- C++中引用的使用总结
- C++中调用Lua函数实例
- Lua和C++的通信流程代码实例
- C与C++之间相互调用实例方法讲解