কম্পিউটার টিউটোরিয়াল

MongoDB-এ অবজেক্ট আপডেট করার পদ্ধতি

MongoDB-এ নেস্টেড অবজেক্টের ফিল্ড আপডেট করতে update() মেথডে ডট নোটেশন এবং $set অপারেটর ব্যবহার করা হয়।

কলেকশন এবং ডকুমেন্ট তৈরি

> db.demo77.insertOne({"Details" : { "Score" : 78 } });
{ "acknowledged" : true, "insertedId" : ObjectId("5e2bd6f371bf0181ecc4228a") }

সব ডকুমেন্ট দেখানো

> db.demo77.find();

আউটপুট:

{ "_id" : ObjectId("5e2bd6f371bf0181ecc4228a"), "Details" : { "Score" : 78 } }

অবজেক্ট আপডেট করার কোয়ারী

Details.Score ফিল্ড ৭৮ থেকে ৮৯ করা হয়েছে:

> db.demo77.update({'Details.Score':78},{$set:{'Details.Score':89}},{multi:true});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

আপডেটের পর ডকুমেন্ট দেখানো

> db.demo77.find();

আউটপুট:

{ "_id" : ObjectId("5e2bd6f371bf0181ecc4228a"), "Details" : { "Score" : 89 } }

ব্যাখ্যা:

  • 'Details.Score':78 - কোয়ারী শর্ত (নেস্টেড ফিল্ডে ডট নোটেশন)
  • $set:{'Details.Score':89} - আপডেট অপারেশন
  • {multi:true} - একাধিক ডকুমেন্ট আপডেট করতে (ডিফল্ট false)

আধুনিক পদ্ধতি (MongoDB 3.2+):

  • একটি ডকুমেন্ট: db.demo77.updateOne({'Details.Score':78}, {$set:{'Details.Score':89}})
  • একাধিক ডকুমেন্ট: db.demo77.updateMany({'Details.Score':78}, {$set:{'Details.Score':89}})

নোট: update() ডিপ্রিকেটেড। নতুন অ্যাপ্লিকেশনে updateOne() বা updateMany() ব্যবহার করুন।

  1. MongoDB-এ অগ্রেশন পাইপলাইনের পর আপডেট করা

  2. MongoDB-তে কন্ডিশনাল আপডেট করার পদ্ধতি

  3. MongoDB-এ ডকুমেন্ট আপডেট করার পদ্ধতি

  4. MongoDB-এ অ্যারে অবজেক্টের নির্দিষ্ট ইনডেক্স আপডেট করা