TABLE nn.values (value TEXT PRIMARY KEY); \
INSERT INTO nn.values VALUES ('xxxxxxx');");
он отрабатывает успешно
но если разнести в разные execSQL:
db.execSQL("ATTACH DATABASE ":memory:" as nn");
db.execSQL("CREATE TABLE nn.values (value TEXT PRIMARY KEY)");
db.execSQL("INSERT INTO nn.values VALUES ('xxxxxxx');")
то при выполнении случается вот такой "бамс":
android.database.sqlite.SQLiteException: unknown database nn (code 1): , while compiling: CREATE TABLE nn.values (value TEXT PRIMARY KEY)
И чот ничего не нагугливается на этот счет.
Может кто знает, как сделать чтобы ATTACH жил дольше? Или вернее – как его правильно делать.
Пробовал обрамлять в acquireReference/releaseReference – не помогло
я не большой спец по базам. Но: 1. Как-то не очень выглядит что ты определеяешь алиас nn в одном запросе, а используешь в другом. 2. db - это уже база разве нет? Зачем надо делать attach. Если хочешь выполнять запросы к другой базе сделай фабрику, в которой будешь получать нужную бд.
Обсуждают сегодня