2011-05-31 6 views
7

¿Hay alguna diferencia entre estos dos métodos? Ambos devuelven una SQLiteDatabase abierta. Ambos pueden crear una base de datos si no existe. SQLiteOpenHelper también tiene getWriteableDatabase cuando se necesita leer/escribir ...SQLiteDatabase.openDatabase vs SQLiteOpenHelper.getReadableDatabase

¿Qué método debo usar y dónde? Basado en el código de ejemplo que he visto, estoy usando SQLiteOpenHelper para crear mi base de datos en primer lugar, pero luego invoco SQLiteDatabase.openDatabase cuando necesito usar la base de datos.

Respuesta

3

El openDatabase() es más flexible que le permite especificar la configuración regional, etc., pero para la mayoría de los casos en que no es necesario para suministrar de forma explícita los detalles del Android documentation dice que use getReadableDatabase() y getWriteableDatabase().

+1

Además, tenga en cuenta que 'getReadableDatabase()' probablemente devuelva 'getWriteableDatabase()'. Ver [esto] (http://www.netmite.com/android/mydroid/cupcake/frameworks/base/core/java/android/database/sqlite/SQLiteOpenHelper.java). – dmon

Cuestiones relacionadas