Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Mongodb

MongoDB में दो "कॉलम" अद्वितीय कैसे रखें?

<घंटा/>

अद्वितीय का उपयोग करें और इसे TRUE पर सेट करें। आइए इंडेक्स बनाकर और दो कॉलम को यूनिक पर सेट करके इसे लागू करें -

>db.keepTwoColumnsUniqueDemo.createIndex({"StudentFirstName":1,"StudentLastName":1},{unique:true});
{
   "createdCollectionAutomatically" : true,
   "numIndexesBefore" : 1,
   "numIndexesAfter" : 2,
   "ok" : 1
}

अब आप उपरोक्त संग्रह में दस्तावेज़ सम्मिलित कर सकते हैं -

>db.keepTwoColumnsUniqueDemo.insertOne({"StudentFirstName":"John","StudentLastName":"Smith","StudentAge":21});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd30fd7b64f4b851c3a13e5")
}
>db.keepTwoColumnsUniqueDemo.insertOne({"StudentFirstName":"John","StudentLastName":"Doe","StudentAge":23});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd30fe5b64f4b851c3a13e6")
}
>db.keepTwoColumnsUniqueDemo.insertOne({"StudentFirstName":"John","StudentLastName":"Smith","StudentAge":24});
2019-05-08T22:50:42.803+0530 E QUERY [js] WriteError: E11000 duplicate key error collection: sample.keepTwoColumnsUniqueDemo index: StudentFirstName_1_StudentLastName_1 dup key: { : "John", : "Smith" } :
WriteError({
"index" : 0,
"code" : 11000,
"errmsg" : "E11000 duplicate key error collection: sample.keepTwoColumnsUniqueDemo index: StudentFirstName_1_StudentLastName_1 dup key: { : \"John\", : \"Smith\" }",
"op" : {
"_id" : ObjectId("5cd30feab64f4b851c3a13e7"),
"StudentFirstName" : "John",
"StudentLastName" : "Smith",
"StudentAge" : 24
}
})
WriteError@src/mongo/shell/bulk_api.js:461:48
Bulk/mergeBatchResults@src/mongo/shell/bulk_api.js:841:49
Bulk/executeBatch@src/mongo/shell/bulk_api.js:906:13
Bulk/this.execute@src/mongo/shell/bulk_api.js:1150:21
DBCollection.prototype.insertOne@src/mongo/shell/crud_api.js:252:9
@(shell):1:1

ऊपर, चूंकि हमने दो कॉलम अद्वितीय सेट किए हैं और अब हम डुप्लिकेट मानों को शामिल करने का प्रयास कर रहे हैं, निम्न त्रुटि दिखाई दे रही है -

duplicate key error collection

खोज () विधि की मदद से संग्रह से सभी दस्तावेजों को प्रदर्शित करने के लिए क्वेरी निम्नलिखित है -

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

यह निम्नलिखित आउटपुट उत्पन्न करेगा -

{
   "_id" : ObjectId("5cd30fd7b64f4b851c3a13e5"),
   "StudentFirstName" : "John",
   "StudentLastName" : "Smith",
   "StudentAge" : 21
}
{
   "_id" : ObjectId("5cd30fe5b64f4b851c3a13e6"),
   "StudentFirstName" : "John",
   "StudentLastName" : "Doe",
   "StudentAge" : 23
}

  1. एंड्रॉइड स्क्लाइट में एक क्रम में दो कॉलम कैसे रखें?

    उदाहरण में आने से पहले, हमें पता होना चाहिए कि एंड्रॉइड में एसक्लाइट डेटा बेस क्या है। SQLite एक ओपन सोर्स SQL ​​डेटाबेस है जो किसी डिवाइस पर टेक्स्ट फ़ाइल में डेटा स्टोर करता है। Android अंतर्निहित SQLite डेटाबेस कार्यान्वयन के साथ आता है। SQLite सभी रिलेशनल डेटाबेस सुविधाओं का समर्थन करता है। इस ड

  1. एंड्रॉइड स्क्लाइट में दो कॉलम कैसे सम्मिलित करें?

    एक उदाहरण में जाने से पहले, हमें पता होना चाहिए कि android में sqlite डेटाबेस क्या है। SQLite एक ओपन सोर्स SQL ​​डेटाबेस है जो किसी डिवाइस पर टेक्स्ट फ़ाइल में डेटा स्टोर करता है। Android अंतर्निहित SQLite डेटाबेस कार्यान्वयन के साथ आता है। SQLite सभी रिलेशनल डेटाबेस सुविधाओं का समर्थन करता है। इस ड

  1. MongoDB में कंसोल कैसे साफ़ करें?

    MongoDB में कंसोल को साफ़ करने के लिए, आप निम्न में से किसी भी दो सिंटैक्स का उपयोग कर सकते हैं। पहला सिंटैक्स इस प्रकार है, जो कि कीबोर्ड शॉर्टकट का उपयोग है - Ctrl + L उपरोक्त कुंजी को दबाने के बाद, आप MongoDB में कंसोल को साफ़ कर सकते हैं। दूसरा सिंटैक्स इस प्रकार है - cls उपरोक्त सिंटैक्स को