ensureIndex() বা createIndex() দিয়ে Unique Index তৈরি
MongoDB-এ কোনো ফিল্ডে ডুপ্লিকেট মান নिषেধ করতে unique index তৈরি করতে হয়। এতে unique: true অপশন ব্যবহার করা হয়।
Unique Index তৈরি এবং ডকুমেন্ট ইনসার্ট
> db.demo257.ensureIndex({Name:1},{unique:true});
{ "createdCollectionAutomatically" : true, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 }
> db.demo257.insertOne({Name:"Chris"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e47a5e51627c0c63e7dba91") }
> db.demo257.insertOne({Name:"Bob"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e47a5e81627c0c63e7dba92") }
> db.demo257.insertOne({Name:"Chris"});
2020-02-15T13:33:54.064+0530 E QUERY [js] WriteError: E11000 duplicate key error collection: test.demo257 index: Name_1 dup key: { : "Chris" }
ডকুমেন্টগুলো দেখানো
> db.demo257.find();
ফলাফল (ডুপ্লিকেট "Chris" ইনসার্ট হয়নি):
গুরুত্বপূর্ণ: Unique index থাকলে একই মান দ্বিতীয়বার ইনসার্ট করলে E11000 duplicate key error দেখায়। আধুনিক MongoDB-এ ensureIndex() এর বদলে createIndex() ব্যবহার করা ভালো।