Python MongoDB-uppdatering

Uppdatera samling

Du kan använda update_one() Metod för att uppdatera dokument eller poster i MongoDB.

update_one() Den första parametern till metoden är query-objektet, som används för att definiera det dokument som ska uppdateras.

Kommentar:Om sökningen hittar flera poster uppdateras endast den första matchande posten.

Den andra parametern är ett objekt som definierar dokumentets nya värden.

Exempel

Ändra adressen "Valley 345" till "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" efter uppdateringen:
for x in mycol.find():
  print(x)

Kör Exempel

Uppdatera flera

För att uppdatera alla dokument som matchar frågan, använd update_many() Metod.

Exempel

Uppdatera adresser som börjar med bokstaven "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, "dokument uppdaterade.")

Kör Exempel