Python MongoDB 更新

更新一个文档

可以使用update_one()方法更新一条记录(或文档)。

update_one()方法的第一个参数是一个查询对象,定义了要更新哪个文档。

注意: 如果查询发现多个记录,则只更新第一个记录。

第二个参数是定义文档新值的对象。

示例

把地址由“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()方法。

示例

更新所有地址以字母“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.")


浙ICP备17015664号 浙公网安备 33011002012336号 联系我们 网站地图  
@2019 qikegu.com 版权所有,禁止转载