2015-10-25 2 views
1

У меня возникли проблемы с предварительно заполненной базой данных в android. Но не обычные проблемы. У меня база данных работает нормально.Android Предварительно заполненная база данных - добавление новых предварительно заполненных строк после публикации

Проблема связана с добавлением новых данных после того, как приложение было опубликовано.

Я потратил много времени на метод onupgrade, но потом я понял, что моя проблема в другом месте. Как только я добавил новые строки в свою базу данных в моей папке с ресурсами, как мне их добавить в базу данных, которая была скопирована в мою папку данных/данных .....

Моя база данных, где я храню свой уровень информация для игры, последний столбец в таблице является флагом для отметки завершенного уровня, поэтому я не могу потерять эту информацию.

ответ

1

Вы можете добавить некоторые файлы исправлений sql, а затем прочитать их, чтобы обновить свою базу данных.

Я использовал его просто со статическим классом FileHelper я скопировал из Danny Remington's post on SO, а затем сделать:

try { 
    InputStream in = mgr.open(assetFile); 
    String[] statements = FileHelper.parseSqlFile(in); 
    dao.mDb.execSQL("BEGIN TRANSACTION;"); 
    /*dao.mDb is a reference to the SQLiteDatabase from my dao*/ 
    for (String statement : statements) { 
     dao.mDb.execSQL(statement); 
    } 
    dao.mDb.execSQL("COMMIT;"); 
    in.close(); 
} catch (IOException e) { 
    // 
} 
Смежные вопросы