MongoDB教學
MongoDB快速入門
MongoDB歷史
MongoDB特點
MongoDB數據庫的優點
MongoDB安裝配置(Windows)
MongoDB安裝配置(Ubuntu)
MongoDB安裝配置(RedHat/CentOS)
MongoDB數據建模
MongoDB創建數據庫
MongoDB刪除數據庫
MongoDB創建集合
MongoDB刪除集合
MongoDB數據類型
MongoDB插入文檔
MongoDB查詢文檔
MongoDB更新文檔
MongoDB刪除文檔
MongoDB投影(選擇字段)
MongoDB限制記錄數
MongoDB排序記錄
MongoDB索引
MongoDB聚合
MongoDB複製
MongoDB分片
MongoDB備份與恢復
MongoDB部署
Java連接MongoDB操作
Python連接MongoDB操作
PHP連接MongoDB操作
Ruby連接MongoDB操作
MongoDB更新文檔
MongoDB的update()和save()方法用於將集合中的文檔更新。update()方法更新現有文檔中的值,而save()方法使用save()方法中傳遞的文檔數據替換現有文檔。
MongoDB Update()方法
update()方法更新現有文檔中的值。
語法
update()方法的基本語法如下 -
> db.COLLECTION_NAME.update(SELECTION_CRITERIA, UPDATED_DATA)
示例
考慮mycol集合具有以下數據 -
> db.mycol.find({}, {'_id':1, 'title':1})
{ "_id" : 100, "title" : "MongoDB Overview" }
{ "_id" : 101, "title" : "MongoDB Guide" }
{ "_id" : 102, "title" : "NoSQL Database" }
{ "_id" : 104, "title" : "Python Quick Guide" }
>
以下示例將爲標題爲「MongoDB Overview」的文檔設置爲「New Update MongoDB Overview」。
> db.mycol.find({'title':'MongoDB Overview'},{'_id':1, 'title':1})
{ "_id" : 100, "title" : "MongoDB Overview" }
> # 更新操作
> db.mycol.update({'title':'MongoDB Overview'},{$set:{'title':'New Update MongoDB Overview'}})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> # 查詢更新後的結果 -
> db.mycol.find({'_id':100},{'_id':1, 'title':1})
{ "_id" : 100, "title" : "New Update MongoDB Overview" }
>
默認情況下,MongoDB只會更新一個文檔。要更新多個文檔,需要將參數’multi‘設置爲true。
>db.mycol.update({'title':'MongoDB Overview'},
{$set:{'title':'New Update MongoDB Overview'}},{multi:true})
MongoDB Save()方法
save()方法使用save()方法中傳遞的文檔數據替換現有文檔。
語法
MongoDB save()方法的基本語法如下所示:
>db.COLLECTION_NAME.save({_id:ObjectId(),NEW_DATA})
以下示例將_id爲 100 的文檔使用新的文檔替換。
db.mycol.save(
{
"_id" : 100, "title":"Update By Save()Method.", "by":"yiibai.com"
}
)
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
db.mycol.find({'_id':100}, {'_id':1, 'title':1})
{ "_id" : 100, "title" : "Update By Save()Method." }