1. 强硬的文档替换更新操作

db.[documentName].update({查询器},{修改器})


2.主键冲突的时候会报错并停止更新操作,当强硬替换的文档和已有的文档ID冲突的时候,系统会报错

例子:

> db.userInfo.find()
{ "_id" : 2, "name" : "xiaoyou" }
{ "_id" : 3, "name" : "yy" }
> db.userInfo.update({_id:2},{_id:3,name:"qq"})
WriteResult({
"nMatched" : 0,
"nUpserted" : 0,
"nModified" : 0,
"writeError" : {
"code" : 16837,
"errmsg" : "The _id field cannot be changed from {_id: 2.0} to {_id: 3.0}."
}
})


3.inserOrUpdate 操作(第三个参数默认是false)

db.[documenName].update({查询器},{修改器},true)


4.批量更新操作,默认情况当查询器查询出多条数据的时候默认就修改第一条数据如果实现批量修改

db.[documnetName].update({查询器},{修改器},false,true)


5.使用修改器来完成局部更新操作