renameCollection() मेथड का उपयोग करना
किसी मौजूदा संग्रह का नाम बदलने के लिए संग्रह ऑब्जेक्ट पर renameCollection() मेथड का उपयोग करें।
सिंटैक्स
db.yourOldCollectionName.renameCollection("yourNewCollectionName");
उदाहरण: संग्रह बनाना और नाम बदलना
> db.savingInformationDemo.insertOne({"StudentName":"Larry"});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9cb44da629b87623db1b07") }
> db.savingInformationDemo.insertOne({"StudentName":"John"});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9cb45da629b87623db1b08") }
> db.savingInformationDemo.insertOne({"StudentName":"Mike"});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9cb461a629b87623db1b09") }
> db.savingInformationDemo.insertOne({"StudentName":"Sam"});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9cb465a629b87623db1b0a") }
नाम बदलने से पहले देखना
> db.savingInformationDemo.find().pretty();
नाम बदलना
> db.savingInformationDemo.renameCollection("saveStudentInformation");
आउटपुट: { "ok" : 1 }
नए नाम से सत्यापन
> db.saveStudentInformation.find();
आउटपुट: वही दस्तावेज़, नए संग्रह नाम saveStudentInformation के तहत।
महत्वपूर्ण नोट्स:
- नाम बदलना **परमाणु** ऑपरेशन है (MongoDB 4.0+ में)। <लक्ष्य संग्रह नाम पहले से मौजूद नहीं होना चाहिए (अन्यथा त्रुटि)।
- संग्रह के इंडेक्स नए नाम के साथ बने रहते हैं।
- शार्डेड क्लस्टर में, नाम बदलने के प्रतिबंध होते हैं (उदाहरण के लिए, शार्ड कुंजी नहीं बदल सकते)।
- वैकल्पिक रूप से,
db.runCommand({ renameCollection: "oldName", to: "newName" })का उपयोग करें।