MongoDB Update

بروز رسانی Collection

برای بروز رسانی یک record یا آنگونه که در MongoDB نامیده میشود (document) باید از متد ()update_one استفاده کرد.

اولین پارامتر متد ()update_one یک query object است که مشخص می‌کند کدام document بروز رسانی شود.

پارامتر دوم مقدار جدید که باید جایگذین شود مشخص می‌کند.

 

مثال: تغییر آدرس از “Valley 345” به “Canyon 123

import pymongo

myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]

myquery = { "address": "Valley 345" }
newvalues = { "$set": { "address": "Canyon 123" } }

mycol.update_one(myquery, newvalues)

#print "customers" after the update:
for x in mycol.find():

  print(x)

Update Many

برای بروز رسانی تمام document ها مطابق با یک معیار خاص باید از متد ()update_many استفاده کرد.

 

مثال: بروز رسانی تمام document هایی که آدرس آنها با حرف “S” شروع می‌شود

import pymongo

myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]

myquery = { "address": { "$regex": "^S" } }
newvalues = { "$set": { "name": "Minnie" } }

x = mycol.update_many(myquery, newvalues)

print(x.modified_count, "documents updated.")