Ответ 1
Если вы не укажете имя файла базы данных правильно, я верю, что оно возвращается к созданию пустой базы данных. Обычно это причина "таблицы не найдена". Проверьте свой путь и имя файла базы данных.
Возможный дубликат:
Android Sqlite - Ошибка "Нет такой таблицы"
Мы пытаемся разработать приложение на Android. Мы используем базу данных SQLite, и по телефону мы получаем
SQLiteException: нет такой таблицы.
Он отлично работает на симуляторе.
Может кто-нибудь предоставить какие-либо данные по этому поводу?
Если вы не укажете имя файла базы данных правильно, я верю, что оно возвращается к созданию пустой базы данных. Обычно это причина "таблицы не найдена". Проверьте свой путь и имя файла базы данных.
Я столкнулся с другим вкусом той же проблемы.
Я получал ошибку no such table
при попытке вставить.
Перед вставкой код вызывал
mDb = mDbHelper.getWritableDatabase();
getWritableDatabase()
, когда вызывается в первый раз, вызывается onCreate()
У меня был SQL-запрос для создания таблицы внутри этого метода oncreate
public void onCreate(SQLiteDatabase db) {
db.execSQL(DATABASE_CREATE);
Log.v("INFO1","creating db");
//Toast.makeText(mCtx, "created", Toast.LENGTH_SHORT).show();
}
Итак, для меня случилось, что db
был успешно создан, когда приложение было впервые запущено, но нет таблицы из-за некоторых других ошибок.
Позже, когда приложение запускается, onCreate()
никогда не вызывается, поскольку db
уже существует и, таким образом, не создается таблица, поэтому все дальнейшие SQL-команды не удались.
Итак, я переместил таблицу создания из onCreate()
, и теперь ее рабочий
Некоторые люди смогли решить проблему, используя описанные здесь шаги здесь. Мне кажется, что эта проблема существует в некоторых версиях Android 2.2. Я включил это изменение в свой код, хотя я все еще ищу Бета-тестеры, чтобы посмотреть, действительно ли он работает.