En este módulo, aprenderemos cómo actualizar documentos en MongoDB. Las operaciones de actualización son fundamentales para mantener la integridad y la relevancia de los datos en una base de datos. MongoDB proporciona varias formas de actualizar documentos, desde actualizaciones simples hasta operaciones más complejas que pueden modificar múltiples documentos a la vez.
Contenidos
Métodos de Actualización
MongoDB ofrece varios métodos para actualizar documentos:
updateOne()
: Actualiza un solo documento que cumple con el criterio de búsqueda.updateMany()
: Actualiza todos los documentos que cumplen con el criterio de búsqueda.replaceOne()
: Reemplaza un solo documento que cumple con el criterio de búsqueda.
Ejemplo de updateOne()
db.collection.updateOne( { _id: 1 }, // Criterio de búsqueda { $set: { name: "Nuevo Nombre" } } // Operación de actualización );
Ejemplo de updateMany()
db.collection.updateMany( { status: "pendiente" }, // Criterio de búsqueda { $set: { status: "completado" } } // Operación de actualización );
Ejemplo de replaceOne()
db.collection.replaceOne( { _id: 1 }, // Criterio de búsqueda { name: "Nombre Reemplazado", status: "nuevo" } // Nuevo documento );
Operadores de Actualización
MongoDB proporciona una variedad de operadores de actualización que permiten modificar documentos de diferentes maneras:
$set
: Establece el valor de un campo.$unset
: Elimina un campo.$inc
: Incrementa el valor de un campo numérico.$push
: Añade un valor a un array.$pull
: Elimina un valor de un array.
Ejemplo de $set
Ejemplo de $unset
Ejemplo de $inc
Ejemplo de $push
Ejemplo de $pull
Actualización de Documentos Únicos
Para actualizar un solo documento, utilizamos el método updateOne()
. Este método actualiza el primer documento que cumple con el criterio de búsqueda.
Ejemplo
db.users.updateOne( { username: "johndoe" }, { $set: { email: "[email protected]" } } );
En este ejemplo, se actualiza el campo email
del primer documento que tiene el username
igual a "johndoe".
Actualización de Múltiples Documentos
Para actualizar múltiples documentos, utilizamos el método updateMany()
. Este método actualiza todos los documentos que cumplen con el criterio de búsqueda.
Ejemplo
En este ejemplo, se actualiza el campo status
de todos los documentos que tienen el status
igual a "pendiente".
Actualización Condicional
Podemos realizar actualizaciones condicionales utilizando operadores de comparación como $gt
, $lt
, $eq
, etc.
Ejemplo
En este ejemplo, se actualiza el campo status
de todos los productos cuyo stock
es menor que 10.
Ejercicios Prácticos
Ejercicio 1
Actualiza el campo age
a 25 para el usuario con username
igual a "janedoe".
Ejercicio 2
Incrementa el campo stock
en 5 para todos los productos con category
igual a "electronics".
Ejercicio 3
Elimina el campo discount
de todos los productos con price
mayor a 100.
Conclusión
En esta sección, hemos aprendido cómo actualizar documentos en MongoDB utilizando diferentes métodos y operadores de actualización. Hemos visto cómo realizar actualizaciones simples y complejas, tanto en documentos únicos como en múltiples documentos. Los ejercicios prácticos proporcionados te ayudarán a reforzar los conceptos aprendidos.
En el próximo módulo, exploraremos el modelado de datos en MongoDB, donde aprenderemos a diseñar esquemas eficientes y a trabajar con documentos anidados y referencias.
Curso de MongoDB
Módulo 1: Introducción a MongoDB
Módulo 2: Operaciones CRUD en MongoDB
Módulo 3: Modelado de Datos en MongoDB
Módulo 4: Indexación y Agregación
Módulo 5: Características Avanzadas de MongoDB
Módulo 6: Rendimiento y Seguridad
- Optimización del Rendimiento
- Respaldo y Restauración
- Mejores Prácticas de Seguridad
- Monitoreo y Alertas