Update Collection en Python MongoDB
En Update Collection en Python MongoDB verás el concepto explicado en lenguaje claro y un ejemplo que puedes ejecutar en el editor de The Data Schools.
Modifica el código del ejemplo antes de pasar a la siguiente lección: la experimentación fija mejor el aprendizaje que leer pasivamente.
Para actualizar documentos en MongoDB desde Python, puedes utilizar el método
update_one()
o
update_many()
según necesites actualizar un solo documento o varios documentos que coincidan con un criterio específico.
Cómo hacer un Update con Python en MongoDB paso a paso
A continuación se muestra paso a paso como actualizar registros con la sentencia Update en MongoDB con Python.
Importa la biblioteca
tienes que importar la biblioteca pymongo :
Ejemplo
import pymongo
Conexión con la base de datos
Establece la conexión con la base de datos:
Ejemplo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["tu bbdd"]
mycol = mydb["Clientes"]
print(mycol)
Actualizar un solo documento
Actualiza un solo documento usando
update_one()
:
Ejemplo
# Crea un filtro para seleccionar el documento que deseas actualizar (por ejemplo, por _id)
filtro = {"_id": ObjectId("id_del_documento_a_actualizar")}
# Crea una actualización con los campos y valores que deseas cambiar
actualizacion = {"$set": {"campo_a_actualizar": "nuevo_valor"}}
# Actualiza el documento
mycol.update_one(filtro, actualizacion)
print(actualizacion)
Actualiza varios documentos
Actualiza varios documentos usando
update_many()
:
Ejemplo
# Crea un filtro para seleccionar el documento que deseas actualizar (por ejemplo, por _id)
filtro = {"_id": ObjectId("id_del_documento_a_actualizar")}
# Crea una actualización con los campos y valores que deseas cambiar
actualizacion = {"$set": {"campo_a_actualizar": "nuevo_valor"}}
# Actualiza los documentos que coincidan con el filtro
mycol.update_many(filtro, actualizacion)
print(actualizacion)
Recuerda que necesitas tener instalada la biblioteca pymongo para poder utilizar MongoDB desde Python. Además, asegúrate de que la conexión a tu servidor de MongoDB sea correcta y que tengas los permisos adecuados para realizar las actualizaciones.
Ejemplo para actualizar un documento
Aquí puedes consultar un ejemplo completo sobre como actualizar un solo documento utilizando el método
update_one()
.
Ejemplo
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["tu bbdd"]
mycol = mydb["Clientes"]
myquery = { "dirección":"C/Mayor, 1"}
newvalues = { "$set": { "direccion": "C/Arriba, 5" } }
mycol.update_one(myquery, newvalues)
#print "clientes" después del update:
for x in mycol.find():
print(x)
Ejemplo para actualizar varios documentos
Para actualizar todos los documentos que cumplan con los criterios de la consulta, use el método
update_many()
.
Actualice todos los documentos donde la dirección comience con la letra
"S"
:
Ejemplo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["tu bbdd"]
mycol = mydb["Clientes"]
print(mycol)
Practica Update Collection en Python MongoDB en el editor
Pon en práctica lo aprendido con nuestro editor Python interactivo. Cada ejercicio incluye el código de partida y un botón para abrirlo en una nueva pestaña, donde puedes modificarlo y ejecutarlo.
Ejercicio: Mongodb Update Collection
Practica mongodb update collection en el editor interactivo.
Ejemplo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["tu bbdd"]
mycol = mydb["Clientes"]
print(mycol)
Cómo practicar
1. Pulsa Ejecutar en el bloque de código.
2. Modifica un valor o argumento.
3. Vuelve a ejecutar y observa la consola.
Comprueba lo aprendido
Responde 2–3 preguntas sobre esta lección. Verás ✓ en verde si aciertas o ✗ en rojo si fallas.