插入操作 插入记录 1.插入一条记录 db.testdata.insert({num:1,name:'a'}); 结果 writeresult({ ninserted : 1 }) 2.查看插入的记录 db.testdata.find(); 插入数组 1.定义数组 var arr = [{num:1,name:'a'},{num:2,name:'b'},{num:3,name:'c'}]; 2.插入记录
插入操作插入记录1.插入一条记录 db.testdata.insert({num:1,name:'a'}); 结果 writeresult({ ninserted : 1 })
2.查看插入的记录 db.testdata.find();
插入数组1.定义数组 var arr = [{num:1,name:'a'},{num:2,name:'b'},{num:3,name:'c'}];
2.插入记录 db.testdata.insert(arr);
结果 ninserted显示插入了几条数据
bulkwriteresult({
writeerrors : [ ],
writeconcernerrors : [ ],
ninserted : 3,
nupserted : 0,
nmatched : 0,
nmodified : 0,
nremoved : 0,
upserted : [ ]
})
批量插入多条数据bulk是2.6的新特性
1.初始化指定集合的批处理操作构造器 var bulk = db.testdata.initializeunorderedbulkop(); //初始化未排序的批处理操作
这个操作返回一个维护着操作列表的未排序操作构造器。未排序的意思是mongodb可以同步执行没有顺序的多个操作。
如果期间发生错误,将继续执行后续操作。
也可以构建一个有序的操作构造器,查看db.collection.initializeorderedbulkop();
2.将插入操作添加进bulk对象中
bulk.insert({num:4,name:'d'});
bulk.insert({num:5,name:'e'});
3.执行批处理
bulk.execute();
返回批处理的结果,ninserted表示插入几条,如果期间发生错误,将包含在结果中。
bulkwriteresult({
writeerrors : [ ],
writeconcernerrors : [ ],
ninserted : 2,
nupserted : 0,
nmatched : 0,
nmodified : 0,
nremoved : 0,
upserted : [ ]
})
额外的例子和方法db.collection.update() method,
db.collection.findandmodify(),
db.collection.save()
这几个方法也可以执行插入操作。