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

MongoDB और अपर इश्यू

सबसे पहले, ऐसा नहीं लगता कि आप अप्सर्ट कर रहे हैं। जावा एपीआई में इसके लिए सिंटैक्स में db.update को सही पर सेट करने के लिए तीसरा तर्क होगा।

   db.update(com.mongodb.DBObject, com.mongodb.DBObject, boolean /*upsert */, boolean /* multi */)

आपको $push भी नहीं करना चाहिए - आप जो कहते हैं उसका शब्दार्थ आप मोंगो शेल में करना चाहते हैं:

db.collection.update( {"resourceVacation":resourceID}, {$set:{"vacationList":[...]}, true)

यह कहता है:यदि संसाधन अवकाश में संसाधन आईडी मौजूद है, तो उसकी "अवकाश सूची" बनाएं जो मैं आपको दे रहा हूं। अगर यह मौजूद नहीं है तो यह रिकॉर्ड डालें।

यदि आप सीधे जावा एपीआई का उपयोग कर रहे थे, तो उपरोक्त के बराबर पर्याप्त होगा।

ऐसा लगता है कि आप स्प्रिंग से MongoTemplate का उपयोग कर रहे हैं। आपको यह जांचना होगा कि आप इसके किस संस्करण का उपयोग कर रहे हैं क्योंकि इसका उपयोग अपसर्ट की अनुमति देने के लिए नहीं किया गया था। . हालांकि उस मुद्दे को हल के रूप में चिह्नित किया गया है। यदि आप पुराने संस्करण पर अटके हुए हैं, तो एक समाधान वर्णित है यहां

यदि आप नवीनतम पर हैं, तो आपको नई जोड़ी गई अपरर्ट विधि का सीधे उपयोग करने में सक्षम होना चाहिए, जैसा कि वर्णित है यहां



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. वैग्रांट में PHP और मोंगो, संदेश के साथ न आया हुआ अपवाद 'मोंगो एक्सेप्शन' 'बीएसओएन डॉक्टर का आकार x बाइट्स है, अधिकतम 0 है'

  2. मोंगोडब डॉट नोटेशन वाइल्डकार्ड?

  3. भिक्षु का उपयोग करके दूरस्थ सर्वर पर होस्ट किए गए मोंगोडब से कनेक्ट करने में सक्षम नहीं है

  4. मोंगोडब समूह और उपसमूह मायने रखता है

  5. डोकर-लिखें और mongoDB:किसी भी संगतता संस्करण के तहत WiredTiger प्रारंभ करने में विफल?