Aggiornamento Python MongoDB
Aggiorna raccolta
Puoi aggiornare un record, o un documento come viene chiamato in MongoDB, usando il update_one()
metodo.
Il primo parametro del update_one()
metodo è un oggetto query che definisce quale documento aggiornare.
Nota: se la query trova più di un record, viene aggiornata solo la prima occorrenza.
Il secondo parametro è un oggetto che definisce i nuovi valori del documento.
Esempio
Cambia l'indirizzo da "Valle 345" a "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)
Aggiorna molti
Per aggiornare tutti i documenti che soddisfano i criteri della query, utilizzare il update_many()
metodo.
Esempio
Aggiorna tutti i documenti in cui l'indirizzo inizia con la lettera "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.")