मैंने कुछ खोज की है और SQLite साइट पर अक्सर पूछे जाने वाले प्रश्न पढ़े हैं, मेरे प्रश्न का उत्तर खोजने में कोई भाग्य नहीं है।क्या एकाधिक डेटाबेस में SQLite समर्थन लेनदेन करता है?
यह बहुत अच्छा हो सकता है कि मेरा डेटाबेस दृष्टिकोण त्रुटिपूर्ण हो, लेकिन फिलहाल, मैं अपने डेटा को एकाधिक SQLite3 डेटाबेस में संग्रहीत करना चाहता हूं, जिसका अर्थ है अलग फाइलें। मैं अपने भ्रष्टाचार के कारण डेटा भ्रष्टाचार के बारे में बहुत चिंतित हूं, या मेरी टेबल में डेटा बदलने के बीच में बिजली आउटेज।
आदेश में डेटा अखंडता को सुनिश्चित करने, मैं मूल रूप से ऐसा करने की जरूरत:
शुरू लेनदेन डेटाबेस # में तालिका (रों) संशोधित 1 डेटाबेस # 2 प्रतिबद्ध, या रोलबैक अगर में तालिका (रों) संशोधित त्रुटि
क्या यह SQLite द्वारा समर्थित है? इसके अलावा, मैं sqlite.net का उपयोग कर रहा हूं, विशेष रूप से नवीनतम जो SQLite 3.6.23.1 पर आधारित है।
अद्यतन
एक और सवाल - यह कुछ लोगों को आम तौर पर उनके इकाई परीक्षण बढ़ेगी है? मैं हमेशा इकाई परीक्षण डेटाबेस, लेकिन इस तरह का कोई मामला कभी नहीं मिला है। और यदि हां, तो आप इसे कैसे करेंगे? ऐसा लगता है कि आपको बूल test_transaction जैसी विधि में एक और पैरामीटर पास करना होगा, और यदि यह सत्य है, तो डेटाबेस एक्सेस के बीच अपवाद फेंक दें। फिर यह सुनिश्चित करने के लिए कॉल के बाद परीक्षण करें कि डेटा के पहले सेट ने इसे अन्य डेटाबेस में नहीं बनाया है। लेकिन शायद यह ऐसा कुछ है जो SQLite परीक्षणों द्वारा कवर किया गया है, और मेरे परीक्षण मामलों में दिखाई देना चाहिए।
मुझे लगता है कि आप इकाई परीक्षण में जोड़ने के लिए नहीं चाहते। ऐसा लगता है जैसे लेनदेन अच्छी तरह से काम कर रहे हैं, उन्हें बार-बार परीक्षण करने का कोई मतलब नहीं है। यह सुनिश्चित करने के लिए बस कुछ प्रारंभिक परीक्षण करें कि सम्मिलन, अद्यतन, रोलबैक इत्यादि उचित हैं और आपके जाने के लिए अच्छा है। –
ठीक है, मुझे लगता है कि यह सबसे अच्छा होगा। उत्तम! – Dave