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

MongoDB কালেকশনের প্রতিটি ডকুমেন্টে নতুন ফিল্ড যোগ করা

MongoDB-এ একটি কালেকশনের সব ডকুমেন্টে একসাথে নতুন ফিল্ড যোগ করতে update() মেথডে $set অপারেটর এবং multi: true (বা { multi: true }) অপশন ব্যবহার করা হয়। এটি সব মেলে যাওয়া ডকুমেন্ট আপডেট করে।

সিনট্যাক্স

db.yourCollectionName.update(
  {}, 
  { $set: { "yourFieldName": yourValue } }, 
  false, 
  true
);

এখানে খালি কোয়েরি {} মানে সব ডকুমেন্ট, false = upsert না, true = multi (সব ডকুমেন্ট আপডেট)।

নমুনা কালেকশন তৈরি

> db.addNewFieldToEveryDocument.insertOne({ "StudentName": "John", "StudentAddress": "US" });
{ "acknowledged": true, "insertedId": ObjectId("5c6efc0b6fd07954a48906ae") }

> db.addNewFieldToEveryDocument.insertOne({ "StudentName": "David", "StudentAddress": "UK" });
{ "acknowledged": true, "insertedId": ObjectId("5c6efc0b6fd07954a48906af") }

> db.addNewFieldToEveryDocument.insertOne({ "StudentName": "Carol", "StudentAddress": "UK" });
{ "acknowledged": true, "insertedId": ObjectId("5c6efc0b6fd07954a48906b0") }

> db.addNewFieldToEveryDocument.insertOne({ "StudentName": "Bob", "StudentAddress": "US" });
{ "acknowledged": true, "insertedId": ObjectId("5c6efc0b6fd07954a48906b1") }

ডকুমেন্টগুলো দেখানো

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

আউটপুট (আপডেটের আগে):

{ "_id": ObjectId("5c6efc0b6fd07954a48906ae"), "StudentName": "John", "StudentAddress": "US" }
{ "_id": ObjectId("5c6efc0b6fd07954a48906af"), "StudentName": "David", "StudentAddress": "UK" }
{ "_id": ObjectId("5c6efc0b6fd07954a48906b0"), "StudentName": "Carol", "StudentAddress": "UK" }
{ "_id": ObjectId("5c6efc0b6fd07954a48906b1"), "StudentName": "Bob", "StudentAddress": "US" }

নতুন ফিল্ড যোগ করার কোয়েরি

> db.addNewFieldToEveryDocument.update(
  {}, 
  { $set: { "StudentAge": 24 } }, 
  false, 
  true
);
WriteResult({ "nMatched": 4, "nUpserted": 0, "nModified": 4 })

আপডেটের পর যাচাই

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

আউটপুট:

{ "_id": ObjectId("5c6efc0b6fd07954a48906ae"), "StudentName": "John", "StudentAddress": "US", "StudentAge": 24 }
{ "_id": ObjectId("5c6efc0b6fd07954a48906af"), "StudentName": "David", "StudentAddress": "UK", "StudentAge": 24 }
{ "_id": ObjectId("5c6efc0b6fd07954a48906b0"), "StudentName": "Carol", "StudentAddress": "UK", "StudentAge": 24 }
{ "_id": ObjectId("5c6efc0b6fd07954a48906b1"), "StudentName": "Bob", "StudentAddress": "US", "StudentAge": 24 }

ব্যাখ্যা: সব ৪টি ডকুমেন্টে StudentAge: 24 ফিল্ড যোগ হয়েছে। updateMany() (MongoDB ৩.২+) ব্যবহার করাই আধুনিক পদ্ধতি:

db.addNewFieldToEveryDocument.updateMany(
  {}, 
  { $set: { "StudentAge": 24 } }
);
  1. MongoDB-এ খালি ফিল্ড চেক করার পদ্ধতি

  2. MongoDB-এ ইউনিক স্পার্স ইন্ডেক্স তৈরি করা

  3. MongoDB-তে সব ডকুমেন্টে নতুন ফিল্ড যোগ করা ($addFields)

  4. MongoDB-এ বিদ্যমান ডকুমেন্টে নির্দিষ্ট ডেটা টাইপের ফিল্ড যোগ করা (লিস্ট, অবজেক্ট)