位置:首頁 > 數據庫 > MongoDB教學 > MongoDB 更新文檔

MongoDB 更新文檔

MongoDB的 update() 和 save() 方法用於更新文檔的集合。 update()方法更新現有的文檔值,而替換現有的文檔通過的文件中 save() 方法。

MongoDB Update() 方法

update()方法更新現有文檔值。

語法:

update() 方法的基本語法如下

>db.COLLECTION_NAME.update(SELECTIOIN_CRITERIA, UPDATED_DATA)

例子

考慮以下數據mycol集合。

{ "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Yiibai Overview"}

下麵的例子將設置新標題'MongoDB Overview'的文件,更新其標題是“New MongoDB Tutorial” 

>db.mycol.update({'title':'MongoDB Overview'},{$set:{'title':'New MongoDB Tutorial'}})
>db.mycol.find()
{ "_id" : ObjectId(5983548781331adf45ec5), "title":"New MongoDB Tutorial"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Yiibai Overview"}
>

MongoDB默認將隻更新單一的文件,來更新多個你需要設置參數置'multi' 為true

>db.mycol.update({'title':'MongoDB Overview'},{$set:{'title':'New MongoDB Tutorial'}},{multi:true})

MongoDB Save() 方法

 save() 方法替換現有的文檔和通過新的文檔 save() 方法

語法

MongoDB 的 save() 方法的基本語法如下:

>db.COLLECTION_NAME.save({_id:ObjectId(),NEW_DATA})

例子

下麵的例子將取代文件具有_id為 '5983548781331adf45ec7'

>db.mycol.save(
   {
      "_id" : ObjectId(5983548781331adf45ec7), "title":"Yiibai New Topic", "by":"Yiibai"
   }
)
>db.mycol.find()
{ "_id" : ObjectId(5983548781331adf45ec5), "title":"Yiibai New Topic", "by":"Yiibai"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Yiibai Overview"}
>