Comment supprimer tous les éléments de SQLite dans Android


Answers

db.delete (TABLE_NAME, null, null); est la syntaxe correcte pour supprimer toutes les lignes d'une table. Mais je pense que vous auriez donné le nom de la table directement sans l'encadrer entre guillemets. Essayez comme ça

db.delete("TABLE_NAME", null, null);

Cela pourrait aider :)

Question

Je voudrais faire une application où l'utilisateur clique sur un bouton, et la base de données SQLite est effacée. Voici ce que j'ai essayé jusqu'ici:

db.delete(TABLE_NAME, null, null);

Qu'est-ce que je fais mal?




Utilisez ce code pour effacer tout le contenu de la base de données

Cursor c = db.rawQuery("SELECT name FROM sqlite_master WHERE type='table'", null);
String tableName="";
  if (c.moveToFirst()) {

      while ( !c.isAfterLast() ) {

          tableName = c.getString( c.getColumnIndex("name"));
          if(!tableName.equals('android_metadata')){
            db.execSQL("DROP TABLE '"+tableName+"'");
          }
          c.moveToNext();
      }
  }

c.close();



pour moi la déclaration mysql classique:

SQLiteDatabase sqLiteDatabase = context.openOrCreateDatabase(Database.DATABASE_NAME, Context.MODE_PRIVATE, null, null);
sqLiteDatabase.execSQL("DELETE FROM " + tableName1);
sqLiteDatabase.execSQL("DELETE FROM " + tableName2);
sqLiteDatabase.execSQL("DELETE FROM " + tableName3);
sqLiteDatabase.execSQL("DELETE FROM " + tableName4);

travaillé parfaitement. bonne chance :)
ps .: sans start / endtransaction ou closeDatabase ...




Links