Pra*_*ani 4 database sqlite android clear android-sqlite
我在Google Playstore上的SQLite数据库中上传了一个包含22个表的apk(版本1.0).
现在我想在新版本(版本2.0)的应用程序中使用36个表更新数据库.
我存储
datebase在默认位置,所以当我按下应用程序管理器中的"清除数据"时,数据库将被删除.
我只想知道在用户更新新版本时如何删除旧数据库(与清除数据相同)?
如果在从Play商店更新应用程序时有任何清除数据的解决方案,那么也回答了我.
非常感谢您的帮助.
谢谢.
您可以使用此方法删除数据库.
context.deleteDatabase(DATABASE_NAME);
Run Code Online (Sandbox Code Playgroud)
您也可以使用此方法首先查找数据库路径,然后删除它.
File myDb = context.getDatabasePath(DATABSE_NAME);
Boolean isDelete = myDb.delete();
Run Code Online (Sandbox Code Playgroud)
另一种解决方案是,如果要更新数据库,则只需更改数据库的版本号.onUpgrade()将自动被调用,您的旧数据库将被删除,并将创建新的数据库.
最后用简单的解决方案完成了:
/** UPGRADE DATABASE **/
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
Log.i(TAG, "Database Version: OLD: "+ oldVersion + " = NEW: "+newVersion);
if(context.deleteDatabase(DATABASE_NAME))
Log.i(TAG, "Database Deleted....");
else
Log.i(TAG, "Database Not Deleted..");
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12260 次 |
| 最近记录: |