Python Mongodb Mettre à jour un document

Python Mongodb Python MongoDB

Dans MongoDB, nous pouvons utiliser la méthodeupdate_one()pour modifier des enregistrements dans un document. Le premier paramètre de cette méthode est la condition de requête, et le second paramètre est le champ à modifier.

Si plusieurs enregistrements correspondants sont trouvés, seul le premier sera modifié.

Les données de test utilisées dans cet article sont les suivantes (cliquez sur l'image pour voir une version agrandie) :

L'exemple suivant fait passer la valeur du champ alexa de 10000 à 12345 :

Exemple

import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["exampledb"] mycol = mydb["sites"] myquery = { "alexa": "10000" } newvalues = { "$set": { "alexa": "12345" } } mycol.update_one(myquery, newvalues) # Afficher la collection "sites" modifiée for x in mycol.find(): print(x)

Après exécution, le résultat de sortie est :

update_one()La méthode ne peut modifier que le premier enregistrement correspondant. Pour modifier tous les enregistrements correspondants, vous pouvez utiliserupdate_many()。

L'exemple suivant trouvera tous lesFcommençant parnamechamps, et pour tous les enregistrements correspondants, lealexachamp est remplacé par123:

Exemple

import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["exampledb"] mycol = mydb["sites"] myquery = { "name": { "$regex": "^F" } } newvalues = { "$set": { "alexa": "123" } } x = mycol.update_many(myquery, newvalues) print(x.modified_count, "Le document a été modifié")

Le résultat de sortie est:

1 文档已修改

Vérifier si les données ont été modifiées :

Python Mongodb Python MongoDB

Autres extensions