我正在使用 SQLiteAssetHelper
将现成的数据库导入我的应用程序。
现在我想发布我的数据库的第二个版本,但是当用户更新应用程序时,数据库没有更新。我看到文档,发现我必须使用 setForcedUpgrade()
,但我不知道在哪里使用它,如果你能指导我,我将不胜感激。 :)
我的数据库.java :
public class MyDatabase extends SQLiteAssetHelper {
private static final String DATABASE_NAME = "database.db";
private static final int DATABASE_VERSION = 2;
public MyDatabase(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}}
我用这些读取数据库:
MyDatabase my;
SQLiteDatabase sq;
my = new MyDatabase(getApplicationContext());
sq = my.getWritableDatabase();
谢谢。
最佳答案
以你的例子为例:
public class MyDatabase extends SQLiteAssetHelper {
private static final String DATABASE_NAME = "database.db";
private static final int DATABASE_VERSION = 2;
public MyDatabase(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
//FORCE UPGRADE BY DELETING OLD DATABASE
setForcedUpgrade(DATABASE_VERSION);
}}
关于android - 升级只读数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24634736/