MongoDB-এ একটি কালেকশনের নাম পরিবর্তন করার জন্য renameCollection() মেথড ব্যবহার করা হয়। এটি কালেকশনের সব ডেটা, ইন্ডেক্স, এবং মেটাডেটা নতুন নামের সাথে সংরক্ষিত রাখে।
উদাহরণ: কালেকশন ও ডেটা তৈরি
> db.demo690.insertOne({ _id: 101, Name: "Sam" });
{ "acknowledged" : true, "insertedId" : 101 }
> db.demo690.insertOne({ _id: 102, Name: "Mike" });
{ "acknowledged" : true, "insertedId" : 102 }
> db.demo690.insertOne({ _id: 103, Name: "John" });
{ "acknowledged" : true, "insertedId" : 103 }
সব ডকুমেন্ট দেখানো
> db.demo690.find();
আউটপুট:
{ "_id" : 101, "Name" : "Sam" }
{ "_id" : 102, "Name" : "Mike" }
{ "_id" : 103, "Name" : "John" }
কালেকশন রিনেম করা
> db.demo690.renameCollection("demo691");
{ "ok" : 1 }
নতুন নামের কালেকশন থেকে ডেটা যাচাই
> db.demo691.find();
আউটপুট (ডেটা অপরিবর্তিত):
{ "_id" : 101, "Name" : "Sam" }
{ "_id" : 102, "Name" : "Mike" }
{ "_id" : 103, "Name" : "John" }
মূল পয়েন্টসমূহ
db.oldName.renameCollection("newName")— সিনট্যাক্স।- নতুন নামের কালেকশন ইতিমধ্যে থাকলে এরর দেবে (যদি
dropTarget: trueদিয়ে না থাকেন)। db.adminCommand({ renameCollection: "db.oldName", to: "db.newName", dropTarget: true })— অ্যাডমিন কমান্ড দিয়েও করা যায় (ক্রস-ডাটাবেসও)।- রিনেম মেটাডেটা ও ইন্ডেক্স সহ অটোমিক (atomic) অপারেশন।
- শার্ডেড (sharded) ক্লাস্টারে রিনেম সাপোর্টেড নয় (মongodb 4.2+ এ সাপোর্ট করা হয়েছে কিছু শর্তে)।