Atualização do Python MongoDB
Atualizar coleção
Você pode atualizar um registro ou documento como é chamado no MongoDB, usando o update_one()
método.
O primeiro parâmetro do update_one()
método é um objeto de consulta que define qual documento atualizar.
Nota: Se a consulta encontrar mais de um registro, somente a primeira ocorrência será atualizada.
O segundo parâmetro é um objeto que define os novos valores do documento.
Exemplo
Altere o endereço de "Valley 345" para "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)
Atualizar muitos
Para atualizar todos os documentos que atendem aos critérios da consulta, use o update_many()
método.
Exemplo
Atualize todos os documentos onde o endereço começa com a letra "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.")