@CL सही है, जर्नल मोड एपीआई स्तर के आधार पर बदलता प्रतीत होता है (शायद यह निर्माता द्वारा भी बदलता है?)।
हालांकि, भविष्य के संदर्भ के लिए, मैंने कई एपीआई स्तरों में जर्नल_मोड के लिए डेटाबेस से पूछताछ की है और परिणाम हैं:
- एंड्रॉयड 2.3.7 (एपीआई 10) =हटाएं
- एंड्रॉइड 4.0.4 (एपीआई 15) =छोटा करें
- एंड्रॉइड 4.1.1 (एपीआई 16) =जारी रखें
- एंड्रॉइड 4.3.0 (एपीआई 18) =जारी रखें
- एंड्रॉइड 4.4.4 (एपीआई 19) =जारी रखें
- एंड्रॉइड 5.0.0 (एपीआई 21) =जारी रखें
- एंड्रॉइड 5.1.0 (एपीआई 22) =जारी रखें
जर्नल मोड प्राप्त करने के लिए कोड:
Cursor c = db.rawQuery("PRAGMA journal_mode;", null);
c.moveToFirst();
String journalMode = c.getString(c.getColumnIndex("journal_mode"));
जर्नल मोड के बारे में:
DELETE जर्नलिंग मोड सामान्य व्यवहार है। DELETE मोड में, रोलबैक जर्नल प्रत्येक लेनदेन के समापन पर हटा दिया जाता है। दरअसल, डिलीट ऑपरेशन वह क्रिया है जिसके कारण लेन-देन होता है।
TRUNCATE जर्नलिंग मोड रोलबैक जर्नल को हटाने के बजाय इसे शून्य-लंबाई में छोटा करके लेनदेन करता है। कई प्रणालियों पर, फ़ाइल को हटाने की तुलना में फ़ाइल को छोटा करना बहुत तेज़ होता है क्योंकि युक्त निर्देशिका को बदलने की आवश्यकता नहीं होती है।
PERSIST जर्नलिंग मोड रोलबैक जर्नल को प्रत्येक लेनदेन के अंत में हटाए जाने से रोकता है। इसके बजाय, जर्नल के शीर्ष लेख को शून्य से अधिलेखित कर दिया जाता है। यह अन्य डेटाबेस कनेक्शनों को जर्नल को वापस रोल करने से रोकेगा। PERSIST जर्नलिंग मोड उन प्लेटफ़ॉर्म पर एक अनुकूलन के रूप में उपयोगी है जहाँ किसी फ़ाइल को हटाना या छोटा करना शून्य के साथ फ़ाइल के पहले ब्लॉक को ओवरराइट करने की तुलना में बहुत अधिक महंगा है।
अधिक जानकारी