MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

सी # ड्राइवर का उपयोग करके मोंगोडब में एक उप दस्तावेज़ अपडेट/हटाएं

उप-दस्तावेज़ को अपडेट करने के लिए आप इसका उपयोग कर सकते हैं:

var update = Update.Set("AnswerList.$.OptionName", "new").Set("AnswerList.$.VoteCount", 5);
collection.Update(Query.And(Query.EQ("_id", new BsonObjectId("50f3c313f216ff18c01d1eb0")), Query.EQ("AnswerList.OptionId", "1")), update);

प्रोफाइलर:

"query" : { "_id" : ObjectId("50f3c313f216ff18c01d1eb0"), "AnswerList.OptionId" : "1" },
"updateobj" : { "$set" : { "AnswerList.$.OptionName" : "new", "AnswerList.$.VoteCount" : 5 } }

और हटाने के लिए:

var pull = Update<Vote>.Pull(x => x.AnswerList, builder => builder.EQ(q => q.OptionId, "2"));
collection.Update(Query.And(Query.EQ("_id", new BsonObjectId("50f3c313f216ff18c01d1eb0")), Query.EQ("AnswerList.OptionId", "2")), pull);

प्रोफाइलर:

"query" : { "_id" : ObjectId("50f3c313f216ff18c01d1eb0"), "AnswerList.OptionId" : "2" },
"updateobj" : { "$pull" : { "AnswerList" : { "OptionId" : "2" } } }

दूसरा तरीका संशोधित चाइल्ड संग्रह के साथ मूल दस्तावेज़ को अपडेट करना है।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB के लिए कॉन्फ़िगरेशन फ़ाइल कैसे बनाएं

  2. मैं पहले दस्तावेज़ पर एक MongoDB चेंजस्ट्रीम को कैसे फिर से शुरू कर सकता हूं और मेरे द्वारा सुनना शुरू करने के बाद ही नहीं बदलता है

  3. मोंगोडब रिपॉजिटरी में कस्टम क्वेरी लिखें

  4. अलग रिकॉर्ड मान प्राप्त करें

  5. 3 स्तरों के साथ MongoDB नेस्टेड लुकअप