Documento de actualización de MongoDB

Documento de actualización de MongoDB

Podemos actualizar el documento de colecciones MongoDB utilizando el método Update (). El método update () necesita una condición a la declaración de actualización para garantizar que solo se actualicen los documentos relevantes. La consulta de actualización toma los dos parámetros para actualizar el campo de los documentos. El primer parámetro es el valor existente del campo especificado que queremos actualizar. El segundo parámetro se especifica con la palabra clave $ set que se requiere para actualizar el valor del siguiente documento especificado.

Cómo actualizar el documento en MongoDB

Antes de usar la consulta de actualización, necesitamos la colección MongoDB. Creamos la colección "Productos" que contiene los documentos. Los documentos en los "productos" se insertan utilizando la siguiente consulta:

db.Productos.insertmany ([

_id: 1,
Producto: "Jeans negros",
Cantidad: 15,
talla mediana",
Estado: "Disponible",
Precio: 400
,

_id: 2,
Producto: "Camiseta blanca",
Cantidad: 10,
talla pequeña",
Estado: "No disponible",
Precio: 550
,

_id: 3,
Producto: "zapatos de neón",
Cantidad: 5,
talla pequeña",
Estado: "Disponible",
Precio: 750
,

_id: 4,
PRODUCTO: "TIES",
Cantidad: 20,
talla larga",
Estado: "No disponible",
Precio: 350
,

_id: 5,
Producto: "Camisas formales",
Cantidad: 17,
talla larga",
Estado: "Disponible",
Precio: 400

])

La colección "Productos" de MongoDB se inserta con éxito con los documentos previamente definidos. El mensaje del documento de inserción se muestra en el siguiente. Ahora, podemos aplicar la consulta de actualización en estos documentos.

Ejemplo 1: MongoDB actualiza el documento para el mismo campo

Considere el ejemplo en el que se emplea la consulta de actualización para actualizar el valor actual con el nuevo. El método Update () se aplica a la colección "Productos" de MongoDB. El método Update () se pasa con la tecla "Producto" cuyo valor se establece como "camisas formales" en el documento. Queremos actualizar el valor de este campo de "producto" para el que proporcionamos el segundo parámetro en el método update ().

La expresión "$ set: producto:" chaqueta "" es el segundo parámetro que establece el nuevo valor para el valor actual. Se utiliza la palabra clave $ set que toma el nombre del campo "producto" y establece el valor actualizado de "chaquetas". Tenga esa cosa en mente que los tipos de datos del valor del campo especificado deben ser los mismos en la colección.

db.Productos.Actualización (Producto: "Camisetas formales", $ set: Product: "Jackets")

En la salida, el MatchedCount indica los documentos que coinciden con los criterios y la cuenta modificada muestra el número de documentos actualizados.

Verificamos que el valor se actualice en la colección. Para esto, llamamos al método find () e insertamos el valor "_id" de "5" del documento actualizado.

db.Productos.Find (_ id: 5)

El valor de "chaquetas" se actualiza en los documentos como se muestra en los siguientes:

Ejemplo 2: MongoDB actualiza el documento para los diferentes campos

A continuación, actualizamos el documento con los diferentes campos. Considere la siguiente consulta donde usamos el método Update () y proporcionamos la condición dentro de él para actualizar el documento. Aquí, actualizamos el documento que tiene el "_id" como "1". Entonces, el campo _id con el valor se establece como el primer parámetro. Luego, tenemos la palabra clave $ set que toma el campo "producto" que se le da un nuevo valor como "jeans azules".

db.Productos.actualizar(
"_id": 1,
$ set: "producto": "jeans azules");

Los verdaderos resultados se generan con el detalle de que el valor se actualiza a la clave especificada. El método Update () primero evalúa la condición y establece el valor modificado con la palabra clave $ set.

El valor actualizado del "_id: 1" se verifica desde la colección "Producto" aplicando la siguiente consulta:

La salida confirma que el valor "Blue Jean" se actualiza con los "Jeans negros" en el documento.

Ejemplo 3: MongoDB actualiza el documento para múltiples campos

Para modificar múltiples documentos a la vez, la consulta del método Update () debe especificarse con múltiples opciones. En la siguiente consulta de ejemplo, usamos el método update () que ingresa el campo "_id" cuyo valor es "2". Queremos que este documento se modifique con los nuevos valores. Luego, tenemos un modificador de $ set que actualiza los valores de los dos campos, "tamaño" y "precio", con los valores recién asignados.

db.Productos.Update (_id: 2, $ set: "size": "grande", "precio": 450)

Los valores para los campos de tamaño y precio se modifican en el documento que mostramos ejecutando la consulta de búsqueda en el shell.

Ejemplo 4: MongoDB actualiza el documento utilizando el método updateOne ()

El método updateOne () es otra forma de actualizar un documento en la colección. Podemos actualizar solo un documento en una colección que cumpla con los criterios de búsqueda dados. Incluso si innumerables documentos cumplen los criterios, solo actualiza el primero. La siguiente consulta usa el método updateOne () para actualizar el documento. Damos la "Cantidad: 17" como criterios de filtro. El método UpdateOne () encuentra el documento cuya "Cantidad" es "17". Luego, el siguiente parámetro establece el campo "Estado" con el valor "no disponible" usando el operador $ set para actualizar el documento coincidente.

db.Productos.UpdateOne (Qty: 17, $ set: status: "no disponible")

La ejecución de esta consulta de actualización confirma que el valor se actualiza en el documento coincidente.

También vemos el documento actualizado ejecutando la consulta de búsqueda.

Ejemplo 5: MongoDB actualiza el documento con el operador de $ Inc

Todas las consultas de actualización anteriores usan el operador $ set para establecer los valores actualizados en el documento. Pero, el método Update () tiene varios operadores al actualizar un documento. Aquí, usamos el operador $ Inc para actualizar el documento. El operador de $ Inc usa el valor mayor contra la clave especificada. Damos una consulta para actualizar el documento con el operador de $ inc. El método Update () coincide con el documento cuyo campo de "producto" tiene el valor de "lazos" y luego aumenta el valor del campo "Cantidad" a "50" con el operador "$ Inc".

db.Productos.UpdateOne (Product: "Ties", $ Inc: Qty: 50)

El documento coincide y el valor se modifica correctamente como se muestra en la siguiente imagen:

Luego se busca específicamente el documento coincidente para ver el nuevo valor incrementado que se actualiza como se muestra en la siguiente imagen de salida:

Ejemplo 6: MongoDB actualiza el documento con el operador $ renombrado

Ahora, usamos el operador $ renombre del método update (). Este operador actualiza el título de campo desde el nombre actual del campo especificado. Tengamos la siguiente consulta del método update (). El método Update () toma la condición de encontrar el documento del campo "Producto" cuyo valor es "Atacas". Cuando se encuentra el documento, el método update () emplea el operador $ renombre. El operador $ renombrado toma el nombre del campo "Estado" que debe renombrarse junto con el nombre modificado del campo "stock".

db.Empleado.Actualización ("Producto": "Ties",
$ rename: "estado": "stock")

El campo "stock" modificado se actualiza en el documento especificado en el resultado de la consulta anterior.

Luego se busca el documento coincidente especificando la consulta que muestra el nombre de campo actualizado.

Ejemplo 7: MongoDB actualiza el documento con el operador $ unset

A continuación, tomamos un ejemplo de un operador $ unset que se utiliza para eliminar los campos especificados del documento. En la siguiente ilustración, utilizamos el operador $ unset en el método Update () que elimina los campos "Tamaño" y "Cantidad" del documento cuyo "_id" es "4".

db.productos.actualizar(
_id: 4,
$ unset: size: "", Qty: ""

El documento emparejado se actualiza después de la ejecución de la consulta Unset anterior.

Se puede ver en el caparazón que el documento coincidente se ha eliminado con los campos no establecidos de "tamaño" y "cita".

Conclusión

Esta guía de MongoDB explora el método Update () que se utiliza para actualizar el documento. Podemos actualizar los diversos campos invocando el método Update () en la consulta. También presentamos el método updateOne () que solo actualiza un documento individual. Podemos usar el método updateMany () si estamos obligados a actualizar varios documentos a la vez. Además, utilizamos los diferentes operadores del método Update () para actualizar el documento en consecuencia.