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

การอัปเดตอะตอมมิกหลายรายการโดยใช้ MongoDB?


สำหรับการอัพเดท atomic หลายๆ ครั้ง ให้ใช้ update() ร่วมกับ $set ให้เราสร้างคอลเลกชันที่มีเอกสาร -

> db.demo699.insertOne({Name:"Chris Brown"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea6e370551299a9f98c93a7")
}
> db.demo699.insertOne({Name:"David Miller"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea6e37a551299a9f98c93a8")
}
> db.demo699.insertOne({Name:"Chris Brown"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea6e381551299a9f98c93a9")
}
> db.demo699.insertOne({Name:"John Doe"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ea6e38a551299a9f98c93aa")
}

แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -

> db.demo699.find();

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

{ "_id" : ObjectId("5ea6e370551299a9f98c93a7"), "Name" : "Chris Brown" }
{ "_id" : ObjectId("5ea6e37a551299a9f98c93a8"), "Name" : "David Miller" }
{ "_id" : ObjectId("5ea6e381551299a9f98c93a9"), "Name" : "Chris Brown" }
{ "_id" : ObjectId("5ea6e38a551299a9f98c93aa"), "Name" : "John Doe" }

ต่อไปนี้เป็นแบบสอบถามเพื่อดำเนินการอัปเดตอะตอมมิกหลายรายการโดยใช้ MongoDB -

> db.demo699.update({Name:"Chris Brown"},{ $set : { Name: "Adam Smith"} }, false, true );
WriteResult({ "nMatched" : 2, "nUpserted" : 0, "nModified" : 2 })

แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -

> db.demo699.find();

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

{ "_id" : ObjectId("5ea6e370551299a9f98c93a7"), "Name" : "Adam Smith" }
{ "_id" : ObjectId("5ea6e37a551299a9f98c93a8"), "Name" : "David Miller" }
{ "_id" : ObjectId("5ea6e381551299a9f98c93a9"), "Name" : "Adam Smith" }
{ "_id" : ObjectId("5ea6e38a551299a9f98c93aa"), "Name" : "John Doe" }