English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Actualización de documentos MongoDB

MongoDB update()y save()Se utiliza para actualizar documentos en la colección. El método update() actualiza los valores de los documentos existentes, mientras que el método save() reemplaza el documento existente con el documento pasado al método save().

Método Update() de MongoDB

El método update() actualiza los valores de los documentos existentes. El método update() actualiza los valores de los documentos existentes, mientras que el método save() reemplaza el documento existente con el documento pasado al método save().

update()La sintaxis básica del método es la siguiente-

>db.COLLECTION_NAME.update(SELECTION_CRITERIA, UPDATED_DATA)

Supongamos que la colección mycol tiene los siguientes datos.

{ "_id": ObjectId(),5983548781331adf45ec5), "title":"introducción a MongoDB"
{ "_id": ObjectId(),5983548781331adf45ec6), "title":"introducción a NoSQL"
{ "_id": ObjectId(),5983548781331adf45ec7)), "title":"nuevo tutorial de introducción"

El siguiente ejemplo establecerá el nuevo título "New MongoDB Tutorial" para el documento con el título "MongoDB Overview".

>db.mycol.update({'title':'introducción a MongoDB'},{$set:{'title':'nuevo tutorial de MongoDB'}})
WriteResult({ "nMatched": 1, "nUpserted": 0, "nModified": 1 )
> db.mycol.find()
{ "_id": ObjectId(),5983548781331adf45ec5), "title":"nuevo tutorial de MongoDB"
{ "_id": ObjectId(),5983548781331adf45ec6), "title":"introducción a NoSQL"
{ "_id": ObjectId(),5983548781331adf45ec7)), "title":"nuevo tutorial de introducción"
>

Por defecto, MongoDB solo actualiza un documento. Para actualizar múltiples documentos, debe establecer el parámetro ''multi'' en true.

> db.mycol.update({'title':'Introducción a MongoDB'},
   {$set:{'title':'nuevo_tutorial_MongoDB'}},{multi:true})

Método Save() de MongoDB

save()El método reemplaza el documento existente con el nuevo documento transmitido mediante el método save().

MongoDB save()La sintaxis básica del método se muestra a continuación-

> db.COLLECTION_NAME.save({'_id':ObjectId(), NEW_DATA})

El siguiente ejemplo utilizará '_id '5983548781331adf45ec5'reemplazar_documento.

> db.mycol.save(
   {
      "_id" : ObjectId("507f191e810c19729de860ea'), 
		''title'':'nuevo_tema_tutorial'',
      ''por'':'tutorial_basico''
   
)
WriteResult({
	''nMatched'': 0,
	''nUpserted'': 1,
	''nModified'': 0,
	"_id" : ObjectId("507f191e810c19729de860ea))
)
> db.mycol.find()
{"_id" : ObjectId("507f191e810c19729de860e6''title'':'nuevo_resumen_tutorial'',
   ''por:''Puntos_tutoriales''}
{"_id" : ObjectId("507f191e810c19729de860e6), ''title'':'Introducción a NoSQL''}
{"_id" : ObjectId("507f191e810c19729de860e6), ''title'':'nuevo_tema_tutorial''}
>

Método.findOneAndUpdate() de MongoDB

findOneAndUpdate()El método actualiza los valores de un documento existente.

findOneAndUpdate()La sintaxis básica del método es la siguiente-

> db.COLLECTION_NAME.findOneAndUpdate(SELECTIOIN_CRITERIA, UPDATED_DATA)

Supongamos que hemos creado una colección llamada empDetails y hemos insertado tres documentos, como se muestra a continuación-

> db.empDetails.insertMany(
	[
		{
			Nombre: ''Radhika'',
			Apellido: ''Sharma'',
			Edad: ''26",
			correo_electronico: ''[email protected]",
			phone: "9000012345"
		},
		{
			Nombre: ''Rachel'',
			Apellido: ''Christopher'',
			Edad: ''27",
			correo_electronico: ''[email protected]",
			phone: "9000054321"
		},
		{
			Nombre: ''Fathima'',
			Apellido: ''Sheik'',
			Edad: ''24",
			e_mail: "[email protected]",
			phone: "9000054321"
		
	]
)

以下示例更新名称为“ Radhika”的文档的年龄和电子邮件值。

> db.empDetails.findOneAndUpdate(
	{First_Name: 'Radhika'},
	3
)
{
	"_id" : ObjectId("5dd6636870fb13eec3963bf5"),
	"First_Name" : "Radhika",
	"Last_Name" : "Sharma",
	"Age" : "30",
	"e_mail" : "[email protected]",
	"phone" : "9000012345"

MongoDB updateOne()方法

此方法更新与给定过滤器匹配的单个文档。

updateOne()方法的基本语法如下:

>db.COLLECTION_NAME.updateOne(, )

> db.empDetails.updateOne(
	{First_Name: 'Radhika'},
	3
)
{ \ 1
>

	25
	{ \
)
{ \ 2, \ 2 

Si utiliza el método \-

> \
{"_id" : ObjectId("5dd6636870fb13eec3963bf5"), \9000012345" }
{"_id" : ObjectId("5dd6636870fb13eec3963bf6"), "First_Name" : "Rachel", "Last_Name" : "Christopher", "Age" : "00", "e_mail" : "Rachel_Christopher."}}}[email protected]", "phone" : "9000054321" }
{"_id" : ObjectId("5dd6636870fb13eec3963bf7", "First_Name" : "Fathima", "Last_Name" : "Sheik", "Age" : "24", "e_mail" : "[email protected]", "phone" : "9000054321" }
>