Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MongoDB

ฉันจะอัปเดตวัตถุลูกใน MongoDB ได้อย่างไร


หากต้องการอัปเดตวัตถุลูก ให้ใช้ตัวดำเนินการ $set ให้เราสร้างคอลเลกชันที่มีเอกสารก่อน -

>db.updateChildObjectsDemo.insertOne({"StudentName":"Chris","StudentOtherDetails":{"StudentSubject":"MongoDB","StudentCountryName":"AUS"}});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ce964e078f00858fb12e91f")
}

ต่อไปนี้เป็นแบบสอบถามเพื่อแสดงเอกสารทั้งหมดจากคอลเลกชันโดยใช้วิธี find() -

> db.updateChildObjectsDemo.find().pretty();

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

{
   "_id" : ObjectId("5ce964e078f00858fb12e91f"),
   "StudentName" : "Chris",
   "StudentOtherDetails" : {
      "StudentSubject" : "MongoDB",
      "StudentCountryName" : "AUS"
   }
}

ต่อไปนี้เป็นแบบสอบถามเพื่ออัปเดตวัตถุลูกใน MongoDB -

> db.updateChildObjectsDemo.update({"StudentName" : "Chris"},{$set:{"StudentOtherDetails.StudentCountryName":"UK"}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

ให้เราตรวจสอบเอกสารอีกครั้ง -

> db.updateChildObjectsDemo.find().pretty();

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

{
   "_id" : ObjectId("5ce964e078f00858fb12e91f"),
   "StudentName" : "Chris",
   "StudentOtherDetails" : {
      "StudentSubject" : "MongoDB",
      "StudentCountryName" : "UK"
   }
}