How to reset SqLite database in Android?

前端 未结 6 910
一个人的身影
一个人的身影 2021-01-03 21:13

I want my users to be able to reset the application, then I need to reset the SQLite database that I have created. How can I do that? I want to reset the database or delete

相关标签:
6条回答
  • 2021-01-03 21:57

    There are two option to clear the table from the database

    Firstly

    If you wan to delete the data on specific row you need to add this code in the database class

        public Boolean specification(int id, String table_name)
         {
             return db.delete(table_name, KEY_ID + "=" + id, null) > 0;
         }
    

    and add the below code when you want to perform this action

      db.deleteSpecificOrder(id, "table_orders");
    

    Secondly

    If you want to delete all the data from th table then you just need to add below code into your database

    public void clearDatabase(String TABLE_NAME) {
        db = this.getReadableDatabase();
        String clearDBQuery = "DELETE FROM " + TABLE_NAME;
        db.execSQL(clearDBQuery);
    }
    

    and then add the below line where you want to perform that action

     db.clearDatabase("table_food_items");
    

    I Hope that will help you

    0 讨论(0)
  • 2021-01-03 22:01

    You can delete the content of all your tables using delete from table where 1=1, or you can call your database onCreate method again

    0 讨论(0)
  • 2021-01-03 22:05

    Just delete your database by

    context.deleteDatabase(DATABASE_NAME);
    

    Please make sure to close your database before deleting.

    0 讨论(0)
  • 2021-01-03 22:07

    Bit late but this can help other people

    public void clearDatabase(String TABLE_NAME) {  
       String clearDBQuery = "DELETE FROM "+TABLE_NAME;  
       db.execSQL(clearDBQuery);  
       }  
    

    This should remove all the rows from the table refer documentation of SQLite database here!

    0 讨论(0)
  • 2021-01-03 22:09

    Just drop tables from database

    db.execSQL("DROP TABLE "+TABLENAME);
    

    and again create the table in same database.

    0 讨论(0)
  • 2021-01-03 22:16

    Working for me.

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        db.execSQL("DROP TABLE IF EXISTS TABLE_NAME");
        onCreate(db);
    }
    
    0 讨论(0)
提交回复
热议问题