1. 程式人生 > >mongodb陣列寫操作

mongodb陣列寫操作

mongodb中一條document格式為:


先想給陣列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作用是給陣列新增元素,且如果陣列不存在時會自動建立.