Contenido del curso
Manipulación de Datos en MongoDB
- 3

Creación y Gestión de Bases de Datos NoSQL con MongoDB
10:49 min - 4

Conexión y gestión básica de MongoDB con Compass y Atlas
09:15 min - 5

Inserción de Documentos en MongoDB: Insert One y Insert Many
07:54 min - 6

Eliminación de Documentos en MongoDB: Comandos y Prácticas Seguras
04:33 min - 7

Consultas Avanzadas en MongoDB: Uso de Compass y la Terminal
09:38 min - 8

Consultas Avanzadas con el Aggregation Framework de MongoDB
07:35 min - 9

Uso de Lookup en MongoDB para Relaciones entre Colecciones
05:46 min - 10

Reemplazo y Modificación de Documentos en MongoDB
Viendo ahora - 11

Actualización y Reemplazo de Documentos en MongoDB
07:36 min
Tipos de Bases de Datos NoSQL
Pasos Futuros
Reemplazo y Modificación de Documentos en MongoDB
Resumen
La operación de reemplazo en MongoDB permite sustituir el contenido completo de un documento. Esto es útil cuando se necesita modificar todo el documento en lugar de solo algunos campos. Aunque existen varias funciones para actualizar documentos, cada una tiene su propósito específico y utiliza los recursos del clúster de manera distinta.
¿Cómo se realiza la operación de reemplazo en MongoDB?
- Utiliza
replaceOnepara reemplazar un documento completo. - El primer argumento es el filtro, usualmente el
ObjectId. - El segundo argumento es el nuevo documento que reemplazará al existente.
Ejemplo:
db.customers.replaceOne( { _id: ObjectId("identificador_del_documento") }, { username: "elitry" } );
Este ejemplo elimina todos los campos excepto username y lo reemplaza con el valor especificado.
¿Qué hacer si no se encuentra un documento?
- Utiliza la opción
upsert: true. - Si el filtro no encuentra un documento, se crea uno nuevo con los valores proporcionados.
Ejemplo:
db.customers.replaceOne( { username: "xyz" }, { username: "xyz", name: "Andrés", email: "test@gmail.com" }, { upsert: true } );
Este comando crea un nuevo documento si no encuentra uno existente con el username especificado.
¿Cómo usar Find and Modify para reemplazar documentos?
findAndModify no solo actualiza el documento, sino que también devuelve el documento antes o después de la modificación.
Ejemplo:
db.customers.findAndModify({ query: { username: "lintco1" }, update: { username: "lintc", name: "Catherine Davis" }, new: true });
Este comando reemplaza el documento y puede configurarse para mostrar el documento modificado.
¿Cuáles son las diferencias clave entre Update y Replace?
updateOnese usa para modificar ciertos campos del documento.updateManyse usa para modificar múltiples documentos que cumplen con un filtro.replaceOnereemplaza el documento completo.findAndModifyrealiza dos operaciones: actualización y retorno del documento modificado.
¿Qué consideraciones tener al escalar?
- Las operaciones atómicas como
updateOneson preferibles para minimizar el uso de CPU y disco. findAndModifypuede ser menos eficiente debido a las operaciones adicionales que realiza.