sql >> Base de Datos >  >> RDS >> SQLite

SQLiteBase de datos Android IllegalStateException

No creo que deba obtener una nueva instancia de SQLiteDatabase como esa cada vez. Desea mantener una referencia al objeto SQLiteDatabase en su SQLiteOpenHelper. Su SQLiteOpenHelper debe construirse más como lo siguiente:

public class DataBase extends SQLiteOpenHelper {

...
    private SQLiteDatabase mDatabase;

    @Override
    public void onCreate(SQLiteDatabase db) {
        ...
        mDatabase = db;
        ...
    }

    void addUser(String who, String time, String table, String phone) {
        ContentValues values = new ContentValues();
        values.put(KEY_NAME, who);
        values.put(KEY_PHONE, phone);
        values.put(KEY_TABLE_RES, table);
        values.put(KEY_TIME, time);
        mDatabase.insert(TABLE_RESERVATION, null, values);
    }

....
}