/ / Problèmes avec DataBase Android - android

Problèmes avec DataBase Android - Android

J'ai un gros problème avec ma base de données.

C'est le code que j'avais l'habitude de créer pour créer la base de données:

public static void initDatabase(Context context){
db = context.openOrCreateDatabase(DATABASE_NAME, SQLiteDatabase.OPEN_READWRITE, null);
db.execSQL("CREATE TABLE IF NOT EXISTS " +
TABLE_NAME + " (number TEXT, name TEXT);");
db.close();
Log.i(TAG, "Database opened ok");
}

Le problème est que maintenant, je dois ajouter un nouveau tableau avec de nouvelles informations. Si je crée une nouvelle table de la même manière, je rencontre des problèmes avec mon application lorsque celle-ci tente d'accéder à la base de données, elle se rompt.

Quelqu'un peut-il m'aider?? Je ne sais pas très bien comment créer correctement la base de données sous Android.

ÉDITÉ:

Ceci est le code de la nouvelle table ....

public static void initDatabase(Context context){
db = context.openOrCreateDatabase(DATABASE_NAME, SQLiteDatabase.OPEN_READWRITE, null);
db.execSQL("CREATE TABLE IF NOT EXISTS " +
TABLE_NAME + " (tlf TEXT, name TEXT);");
db.close();
Log.i(TAG, "Database opened ok");

}

C'est pourquoi je ne l'avais pas ajouté auparavant, car c'est une autre table qui est presque identique à l'autre ....

RÉVISÉ ET RÉSOLU:

Il fallait utiliser le onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) méthode de la classe SQLiteOpenHelper pour pouvoir mettre à jour ma table de base de données. Pour plus d'informations: https://developer.android.com/reference/android/database/sqlite/SQLiteOpenHelper.html

Merci quand même à tous!

Réponses:

0 pour la réponse № 1

Il était nécessaire d'utiliser la méthode onUpgrade (base de données SQLiteDatabase, int oldVersion, int newVersion) de la classe SQLiteOpenHelper pour pouvoir mettre à jour ma table de base de données.

Pour plus d'informations: https://developer.android.com/reference/android/database/sqlite/SQLiteOpenHelper.html