MongoDB-তে ডুপ্লিকেট এন্ট্রি এড়াতে, আপনি createIndex() ব্যবহার করতে পারেন। সিনট্যাক্স নিম্নরূপ -
db.yourCollectionName.createIndex({"yourFieldName":1},{unique:true});
আসুন উপরের সিনট্যাক্সটি বাস্তবায়ন করি। MongoDB-তে ডুপ্লিকেট এন্ট্রি এড়ানোর জন্য ক্যোয়ারী হল −
> db.avoidDuplicateEntriesDemo.createIndex({"UserName":1},{unique:true});{ "createdCollectionAutomatically" :true, "numIndexesBefore" :1, "numIndexesAfter" :2, "ঠিক আছে" :1}
এখন উপরের সংগ্রহে কিছু রেকর্ড সন্নিবেশ করান। রেকর্ড সন্নিবেশ করার জন্য ক্যোয়ারী নিম্নরূপ -
> db.avoidDuplicateEntriesDemo.insertOne({"UserName":"John"});{ "স্বীকৃত" :true, "insertedId" :ObjectId("5c90e1824afe5c1d2279d697")}
আপনি যখনই একই রেকর্ড আবার ঢোকানোর চেষ্টা করেন তখনই এখানে ত্রুটি দেখা যায় −
> db.avoidDuplicateEntriesDemo.insertOne({"UserName":"John"});2019-03-19T18:03:08.465+0530 ই প্রশ্ন [js] WriteError:E11000 ডুপ্লিকেট কী UserName_1 dup key:{ :"John" } :WriteError({ "index" :0, "code" :11000, "errmsg" :"E11000 ডুপ্লিকেট কী ত্রুটি সংগ্রহ:test.avoidDuplicateEntriesDemo index:UserName_1 :\" dup key:জন\" }", "op" :{ "_id" :ObjectId("5c90e1844afe5c1d2279d698"), "ব্যবহারকারীর নাম" :"জন" }})WriteError@src/mongo/shell/bulk_api.js:461:48Bulk_api.js:461:48Bulk/smerge src/mongo/shell/bulk_api.js:841:49Bulk/executeBatch@src/mongo/shell/bulk_api.js:906:13Bulk/this.execute@src/mongo/shell/bulk_api.js:1150:21Dprotype. insertOne@src/mongo/shell/crud_api.js:252:9@(শেল):1:1
আমাদের আরেকটি রেকর্ড সন্নিবেশ করা যাক. প্রশ্নটি নিম্নরূপ -
> db.avoidDuplicateEntriesDemo.insertOne({"UserName":"Carol"});{ "স্বীকৃত" :true, "insertedId" :ObjectId("5c90e18d4afe5c1d2279d699")}
Find() পদ্ধতির সাহায্যে একটি সংগ্রহ থেকে সমস্ত নথি প্রদর্শন করুন। প্রশ্নটি নিম্নরূপ -
> db.avoidDuplicateEntriesDemo.find();
নিচের আউটপুট −
{ "_id" :ObjectId("5c90e1824afe5c1d2279d697"), "ব্যবহারকারীর নাম" :"জন" }{ "_id" :ObjectId("5c90e18d4afe5c1d2279d699"), "ব্যবহারকারীর নাম" }