Необработанное исключение: DatabaseException (таблица UsernameTable не имеет
столбец с именем RememberMe (Sqlite code 1):, во время компиляции: INSERT OR
ЗАМЕНИТЕ В UsernameTable (username, RememberMe) ЗНАЧЕНИЯ (?,?), (ОС
ошибка - 2: нет такого файла или каталога)) sql 'INSERT OR REPLACE INTO
Имя пользователяTable (имя пользователя, RememberMe) VALUES (?,?) 'Args [term @ melfs,
1]}
Я обновил свою БД. Я добавил новый столбец в таблицу UsernameTable
. Но это не работает. У меня уже так много записей в этой БД. Я не могу drop
Итак, как мне добавить новый столбец к существующей БД. Я использовал Sqflite
initDb() async {
io.Directory documentsDirectory = await getApplicationDocumentsDirectory();
String path = join(documentsDirectory.path, "HelperDatabase.db");
var theDb = await openDatabase(path, version: 4, onCreate: _onCreate, onUpgrade: _onUpgrade);
return theDb;
}
Метод OnUpgrade.
void _onUpgrade(Database db, int oldVersion, int newVersion)async{
if(oldVersion != 5){
await db.execute("ALTER TABLE UsernameTable ADD COLUMN rememberMe INTEGER DEFAULT 0");
}
}
при создании метода
void _onCreate(Database db, int version) async {
await db.execute("""CREATE TABLE UsernameTable(username STRING)""");
}