2012-12-07 6 views
5

में मेरे खुले या बंद हैं मेरे पास DBDriver कक्षा में open और closesqlite database में दो विधियां हैं।एसकलाइट डेटाबेस जांचें एंड्रॉइड

private SQLiteDatabase database; 

/** 
    * Open Database to read and write. 
    * 
    * @throws SQLException 
    */ 
    public void open() throws SQLException { 
     database = dbHelper.getWritableDatabase(); 

    } 

    /** 
    * Close opened database. 
    */ 
    public void close() { 
     dbHelper.close(); 
    } 

मैं अपने अन्य वर्ग में उपरोक्त विधि का प्रयोग कर रहा हूँ खुला और बंद sqlite database

मैं पहचान करने के लिए डेटाबेस खुली या बंद है चाहता हूँ। मैं ये कैसे करूं ?

+0

न जानते हो क्यों आप डेटाबेस खुला है या पास के लिए जाँच करना चाहते हैं। लेकिन जब भी आप डेटाबेस से डेटा लाने/एक्सेस करना चाहते हैं तो इसका उपयोग किया जाता है। डेटा लाने के लिए जा रहा इससे पहले कि आप पढ़ने/अनुमति लिखने में डेटाबेस को खोलने के लिए होना आवश्यक है और डेटा का उपयोग कर के बाद आप इसे बंद करना होगा। आशा है कि आप बिंदु मिल गया है, तो आप चाहते हैं, कैसे खुला का उपयोग करें और डेटाबेस बंद हुआ। –

+0

@iDroidExplorer मैं अपने अनुप्रयोग में एक शर्त जोड़ने की जरूरत है। इसके लिए मैं डेटाबेस की पहचान करना चाहता हूं खुला या बंद है। – Bishan

+0

ठीक तो आप अपनी पोस्ट में justDanyul के जवाब के साथ चलते हैं। आपकी मदद करने के लिए यह सही है। –

उत्तर

22

आप की जाँच करने के तो अपने मामले में, कि

database.isOpen() 

सिर्फ एक टिप हो सकता है, जब जावा आधारित API (या उस बात के लिए किसी भी एपीआई) के साथ काम कर isOpen() उपयोग कर सकते हैं, प्रलेखन का उपयोग करना सीख एपीआई कुंजी है। दस्तावेज़ आपको बताएंगे कि किसी दिए गए वर्ग के लिए कौन सी विधियां उपलब्ध हैं। उदाहरण के लिए, आपको कक्षा SQLiteDatabase का एक उदाहरण मिला है। अपनी सुंदर विधि आप देख रहे हैं की पहचान करने के तुच्छ नीचे

http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html

javadocs जाँच हो रही है।

+4

अच्छा आरटीएफएम टिप – Stephan

+0

के लिए +1 क्या आप इसे टाइपस्क्रिप्ट में करते हैं? मुझे मिलता है: 'ERROR इन ./app/pages/chats/chatsStorageService.ts (37,56): त्रुटि TS2339: संपत्ति 'isOpen' प्रकार 'SQLite' प्रकार पर मौजूद नहीं है। – Richard