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

मोंगोडीबी लेनदेन

आप नहीं कर सकते।
ऐसा करने का एकमात्र तरीका someotherRelationaldb.Save(object); को लपेटना होगा एक कोशिश पकड़ने में, और पकड़ने पर, mongoCollection.Remove . करें

आपको संभवतः object . पर एक ज्ञात पहचानकर्ता संपत्ति की आवश्यकता होगी और फिर कुछ ऐसा कर सकता है:

mongoCollection.Remove(Query.EQ("_id", object.Id));

इसलिए, बिना सफाई के, आपकी सेव विधि कुछ इस तरह दिखेगी:

private void Save(object)
{
   mongoCollection.Save(object);

   try
   {
      someotherRelationaldb.Save(object);
   }
   catch
   {
      mongoCollection.Remove(Query.EQ("_id", object.Id));
   }
}

दूसरा तरीका object . पर फ्लैग प्रॉपर्टी को स्टोर करना है जो कि बाद में अपडेट हो जाता है someOtherRelationaldb . को सफल लेखन

यह बिल्कुल भी आदर्श नहीं है, लेकिन आप अपनी क्वेरी को केवल उन दस्तावेज़ों को वापस करने के लिए संशोधित कर सकते हैं जहां IsPersisted झंडा सत्य है।

इनमें से कोई भी दृष्टिकोण भारी नुकीले वातावरण में अच्छा नहीं चलेगा, हालांकि मुझे नहीं लगता।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. मुझे यह त्रुटि मिलती है कि मुझे समझ में नहीं आता क्यों, मेरे एमवीसी प्रोजेक्ट में नोआरएम और मोंगो का उपयोग करना

  2. MongoDB में LIKE क्वेरी कैसे काम करती है?

  3. क्या मोंगोडीबी-क्वेरी में डालना संभव है?

  4. नेवला:किसी शर्त से मेल खाने वाले *सभी* व्यक्तियों को कैसे अपडेट करें?

  5. Mongodb:mongo shell में ObjectId से दिनांक सीमा क्वेरी निष्पादित करें