Я создал вспомогательный класс базы данных с методом open () и расширенный помощник sqlite с переопределенным onCreate (). (показано ниже). Несмотря на все это, я получаю сообщение об ошибке «SQLiteException, такой таблицы нет». Я не понимаю, почему openHelper не помогает?
public void open() {
try{
db = openHelper.getWritableDatabase();
} catch (SQLiteException e) {
db = openHelper.getReadableDatabase();
}
}
//other stuff
public static final String database_create = "create table " + database_table + " (" + primary_key + " integer primary key autoincrement, "
+ company_column + " text not null, " + product_column + " text not null);";
@Override
public void onCreate(SQLiteDatabase _db) {
_db.execSQL(database_create);
}
следующий код предназначен для временной вставки записи, поскольку база данных не может быть пустой по другим причинам. Кажется, что он выполняется идеально, но последний бит кода, который следует после, вызывает ошибку
CompanyAndProductDatabaseAdapter cpdAdapter = new CompanyAndProductDatabaseAdapter(this);
cpdAdapter.open();
errorguard = cpdAdapter.insertPair("Loading", "...");
cpdAdapter.close();
//other stuff
cpdAdapter.open();
Cursor cursor = cpdAdapter.getAllPairsCursor(); //error here
cursor.requery();
startManagingCursor(cursor);