web-dev-qa-db-fra.com

Modifier le numéro de version de la base de données SQLite

J'ai une base de données que j'ai construite dans le navigateur SQLite, et cela fonctionne très bien. J'ai lancé une application avec une base de données prédéfinie et maintenant je veux ajouter plus de tables et de données à cette base de données.

Je peux obtenir l'application pour lancer la méthode onUpgrade() de SQLiteOpenHelper. Mais le problème, c'est qu'il le fait CHAQUE fois que j'utilise l'aide.

Je l'ai localisé, uniquement au lancement de l'application, en séparant la commande de mise à niveau de l'aide que j'ai utilisée pour récupérer les données, mais cela reste un problème.

Je l'ai compris cependant, car j'utilise la même base de données sur mon ordinateur (celle que je modifie) depuis la version 1. Donc, chaque fois qu'il écrit la nouvelle base de données sur la carte SD, il affiche la version 1 même si je devrait être à la version 4 maintenant.

Donc, ma question est, comment puis-je modifier manuellement la version de base de données de la base de données d'origine afin que, lors de sa mise à jour, elle n'écrive pas l'ancien numéro de version sur la nouvelle?

35
Shaun

Pour mettre à jour manuellement la version à 4, vous exécutez l'instruction SQL suivante:

PRAGMA user_version = 4
66
Jens

Vous pouvez également le définir via la méthode setVersion SqlLiteDatabase.

Source: http://developer.Android.com/reference/Android/database/sqlite/SQLiteDatabase.html#setVersion (int)

6
Donn Felker

Une autre façon de changer la version de votre base de données Sqlite. Vous pouvez utiliser DB Browser pour SQLite:

  1. Ouvrez le fichier de base de données avec "DB Browser for SQLite".
  2. Remplacez le numéro de "Version utilisateur" par le numéro de votre choix
  3. Cliquez sur le bouton "Enregistrer" Sqlite Database Browser
5
Asp Upload