在Android中关闭SQLiteDatabase时的最佳做法是什么?

在官方文档中,你读到:

公共SQLiteDatabase getWritableDatabase()

...

一旦打开成功,数据库将被缓存,因此每次需要写入数据库时​​都可以调用此方法。 (确保在不再需要数据库时调用close()。)

至于SQLiteOpenHelper,我为唯一的实例实现了单例模式,但SQLiteDatabase如何呢?
缓存的有效性如何?

Android SQLite数据库什么时候关闭我看了这篇文章,但没有关于缓存的讨论。


分别在每个操作之前和之后打开和关闭数据库。
切勿在不需要时将其打开。

你的口头禅应该是:打开它,使用它,关闭它。
重复每个数据库操作。

光标也是如此。


每次查询后,我总是关闭SQLiteDatabase。 例如,以下是我如何实现我的插入方法:

public void insert(ContentValues valuesMap){
    SQLiteDatabase db = getWriteableDatabase();
    try{
       db.insert("ContactsTable", null, valuesMap);
    }catch(Exception e){
       // do someting...
    }finally{
       db.close()
    }
}
链接地址: http://www.djcxy.com/p/42627.html

上一篇: What is the best practice when closing SQLiteDatabase in Android?

下一篇: Android SQCipher do I need to close the database?