发表于 2015-7-9 13:22:46

MongoDB学习笔记2——创建、更新、查询、删除文档

  创建文档
  javascript中没有批量插入的API,php、java、c#等driver则有批量插入的API,如php驱动中的collection.batchInsert().
  一般的插入方法为insert(doc) 或者save(doc).
  insert()与save()的区别是:要添加的doc中有_id,且在collection中有相同_id的doc,那么insert()不做任何操作,而save()会对collection中的doc进行更新。
  更新文档(MongoDB的更新操作是原子性的,若两个更新同时进行,那么先到达服务器的先执行)
  collection.update(conditionDoc, modifierDoc).
  conditionDoc为查询文档,包含查询匹配条件;modifierDoc为修改器文档,描述如何做修改的。
  sample如下:
  文档替换,doc的属性增删
  



//先将3个只有x属性的文档插入到collection中
a={"x":1};
b={"x":2};
c={"x":3};
db.position.save(a);
db.position.save(b);
db.position.save(c);
//查看collection中的所有doc
db.position.find();
//为a添加y属性,并更新collection
a.y=11;
db.position.update({"x":1},a);
//查看collection中的所有doc
db.position.find();
//删除collection中doc的y属性
a=db.position.findOne({"x":1});
delete a.y;
db.position.update({"x":1}, a);

//查看collection中的所有doc
db.position.find();
  

  删除文档
  collection.remove(condition);如果不赋参数,那么整个collection中的doc都会被清空掉,但是已经建立的index会保留。
  collection.drop();这个方法用于删除整个collection,包括其中所有的doc和index,若为了删除collection中的所有doc,那么可以选择先drop整个collection,然后重新建立index。
  查询文档
页: [1]
查看完整版本: MongoDB学习笔记2——创建、更新、查询、删除文档