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

MongoDB ডকুমেন্টের _id আপডেট করা

আপনি এটি আপডেট করতে পারবেন না কিন্তু আপনি একটি নতুন আইডি সংরক্ষণ করতে পারেন এবং পুরানো আইডি মুছে দিতে পারেন। MongoDB ডকুমেন্টের _id আপডেট করার জন্য কিছু ধাপ অনুসরণ করুন। ধাপগুলো নিচে:

Step 1: প্রথম ধাপে, আপনাকে ObjectId একটি ভেরিয়েবলে সংরক্ষণ করতে হবে।

anyVariableName=db.yourCollectionName.findOne({_id:yourObjectIdValue)});

Step 2: দ্বিতীয় ধাপে, আপনাকে একটি নতুন আইডি সেট করতে হবে।

yourDeclaredVariableName._id=yourNewObjectIdValue;

Step 3: তৃতীয় ধাপে, আপনাকে ডকুমেন্টে নতুন আইডি ইনসার্ট করতে হবে।

db.yourCollectionName.insert(yourDeclaredVariableName);

Step 4: চতুর্থ ধাপে, আপনাকে পুরানো আইডি রিমুভ করতে হবে।

db.yourCollectionName.remove({_id:yourOldObjectIdValue)});

উপরোক্ত ধাপগুলো বুঝতে, ডকুমেন্টসহ একটি কালেকশন তৈরি করি। ডকুমেন্টসহ কালেকশন তৈরির কুয়েরি:

> db.updateIdDemo.insertOne({"StudentName":"Robert"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6ebfec6fd07954a4890683") }
> db.updateIdDemo.insertOne({"StudentName":"Chris"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6ebff66fd07954a4890684") }
> db.updateIdDemo.insertOne({"StudentName":"Maxwell"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6ebfff6fd07954a4890685") }

find() মেথডের সাহায্যে কালেকশন থেকে সব ডকুমেন্ট দেখান। কুয়েরি:

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

আউটপুট:

{ "_id" : ObjectId("5c6ebfec6fd07954a4890683"), "StudentName" : "Robert" }
{ "_id" : ObjectId("5c6ebff66fd07954a4890684"), "StudentName" : "Chris" }
{ "_id" : ObjectId("5c6ebfff6fd07954a4890685"), "StudentName" : "Maxwell" }

MongoDB ডকুমেন্টের _id আপডেট করার কুয়েরি:

Step1: > myId=db.updateIdDemo.findOne({_id:ObjectId("5c6ebfec6fd07954a4890683")});
{ "_id" : ObjectId("5c6ebfec6fd07954a4890683"), "StudentName" : "Robert" }
Step 2: > myId._id=ObjectId("5c6ebfec6fd07954a4890689");
ObjectId("5c6ebfec6fd07954a4890689")
Step 3: > db.updateIdDemo.insert(myId);
WriteResult({ "nInserted" : 1 })
Step 4: > db.updateIdDemo.remove({_id:ObjectId("5c6ebfec6fd07954a4890683")});
WriteResult({ "nRemoved" : 1 })

আসুন চেক করি _id আপডেট হয়েছে কিনা। find() মেথডের সাহায্যে কালেকশন থেকে সব ডকুমেন্ট দেখান:

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

আউটপুট:

{ "_id" : ObjectId("5c6ebff66fd07954a4890684"), "StudentName" : "Chris" }
{ "_id" : ObjectId("5c6ebfff6fd07954a4890685"), "StudentName" : "Maxwell" }
{ "_id" : ObjectId("5c6ebfec6fd07954a4890689"), "StudentName" : "Robert" }

নমুনা আউটপুট দেখুন, "StudentName":"Robert" এর _id পরিবর্তন হয়েছে।

  1. MongoDB-তে ডকুমেন্ট আপডেট করা কিন্তু এক্সিস্টিং ডেটা ওভাররাইট না করা

  2. MongoDB-এ _id দিয়ে ডকুমেন্ট ডিলিট করা

  3. MongoDB-তে ডট নোটেশন ব্যবহার করে নেস্টেড ডকুমেন্ট আপডেট করা

  4. MongoDB-এ এমবেডেড ডকুমেন্ট থেকে নির্দিষ্ট এলিমেন্ট খুঁজে বের করা