Изменить номер версии базы данных SQLite - PullRequest
35 голосов
/ 07 ноября 2011

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

Я могу заставить приложение запускать метод onUpgrade SQLiteOpenHelper. Но проблема в том, что он делает это КАЖДЫЙ раз, когда я использую помощника.

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

Я понял это, так как я использую ту же базу данных на своем компьютере (ту, которую я редактирую) начиная с версии 1. Поэтому, когда он записывает более новую базу данных на SD-карту, он показывает версию 1. хотя я должен быть до версии 4 к настоящему времени.

Итак, мой вопрос: как я могу вручную отредактировать версию базы данных исходной базы данных, чтобы при обновлении она не записывала старый номер версии поверх новой?

Ответы [ 3 ]

64 голосов
/ 07 ноября 2011

Чтобы вручную обновить версию до 4, выполните следующую инструкцию SQL:

PRAGMA user_version = 4
6 голосов
/ 18 марта 2014

Вы также можете установить его с помощью метода setVersion SqlLiteDatabase.

Источник: http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html#setVersion(int)

4 голосов
/ 10 июля 2017

Еще один способ изменить версию вашей базы данных Sqlite.Вы можете использовать Браузер БД для SQLite:

  1. Откройте файл базы данных с помощью «Браузер БД для SQLite».
  2. Измените номер «Версия пользователя» на любой номер, который вы хотите
  3. Нажмите кнопку «Сохранить» Sqlite Database Browser
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...