- 強硬的文檔替換更新操作
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)