我想在每次点击应用程序中的特定位置时清除我的SQLite数据库。
我打算制作一个我称之为resetTables()
的方法,但这似乎比我预期的更具挑战性,因为我真的不知道放在哪里。这是一个片段。
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(DATABASE_CREATE);
}
public void reset(SQLiteDatabase db) {
db.execSQL("DROP TABLE IF EXISTS " + DATABASE_TABLE);
}
我在重置时遇到黄线,我无法在我的代码中调用此方法。有什么想法吗?
请注意,此question类似,但无法帮助我。
public void resetTables(){
mDb.delete(TABLE_NAME, null, null);
}
答案 0 :(得分:1)
首先创建一个创建数据库和表的方法。
/**
* Re crate database
* Delete all tables and create them again
* */
public void resetTables(){
SQLiteDatabase db = this.getWritableDatabase();
// Delete All Rows
db.delete(TABLE_NAME, null, null);
db.close();
}
并使用按钮点击事件调用上述方法。
答案 1 :(得分:0)
我这样做了......
@Override
public void onOpen(SQLiteDatabase db) {
// TODO Auto-generated method stub
super.onOpen(db);
db.execSQL("DROP TABLE IF EXISTS " + DATABASE_TABLE);
}
是的它确实对我有用.. :)