Как сбросить базу данных sqlite обратно в папку с активами - PullRequest
0 голосов
/ 21 июля 2011

Мне удалось создать базу данных sqlite3 в моем приложении для Android из исходного файла sqlite3 в папке с активами.Было бы полезно иметь аналогичную процедуру для выгрузки измененной базы данных обратно в эту папку, чтобы а) убедиться, что все обновления / вставки / удаления работают правильно, и б) как возможный способ передачи массовых изменений другому процессу.

У кого-нибудь есть утилита для этого?

1 Ответ

0 голосов
/ 21 июля 2011

Я так не думаю, если вы можете сделать это. Если вы хотите сохранить данные, которые вы недавно вставили, вы можете сохранить их в своей базе данных в папке / database, чтобы база данных не была перезаписана (подумайте примерно так: когда вы запускаете свое приложение, код снова записывает базу данных из вашей папки активов в папку / database, чтобы у вас снова были старые данные) выполните это

File filedb = new File("data/data/[package-name]/databases/"+DATABASE_NAME);
if( !filedb.exist())
{


   //if the database file does not exist, means that database is not copied for you asset folder to /database folder, so you do the copying, 

}

С помощью этого теста вы предотвратили перезапись базы данных в папке / database на базу данных, находящуюся в папке вашего ресурса. Чтобы убедиться, что вставка / удаление / обновление работают нормально, извлеките файл базы данных из эмулятора и откройте его в браузере SQLite. Не забудьте положить его обратно в активы;)

Приветствие.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...