首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何升级sqlite数据库?

如何升级sqlite数据库?
EN

Stack Overflow用户
提问于 2013-05-12 18:04:52
回答 1查看 270关注 0票数 2

我在我的应用程序中有一个存储高分的sqLite数据库。我最近添加了一个新的列(级别),需要升级数据库,否则应用程序会崩溃。如果我手动删除,.db文件可以正常工作。我试图增加数据库版本,但没有起作用。那么该怎么做呢?

下面是我的sqlite帮助器类:

代码语言:javascript
复制
public class DataBaseHelper extends SQLiteOpenHelper{

public static final String TABLE_HISCORES = "hiScores";
static final String RANK = "_id";
static final String NAME = "name";
static final String SCORE = "score";
static final String LEVEL = "level";
private static final String DATABASE_NAME = "scoresdb.db";
private static final int DATABASE_VERSION = 1;
SQLiteDatabase db;

private static final String DATABASE_CREATE = "CREATE TABLE " + TABLE_HISCORES + " ("
        + RANK + " INTEGER PRIMARY KEY AUTOINCREMENT, "
        + NAME + " TEXT, "
        + LEVEL + " TEXT, "
        + SCORE + " INTEGER );";
public DataBaseHelper(Context context) {
    super(context, DATABASE_NAME, null, DATABASE_VERSION);
  }

@Override
public void onCreate(SQLiteDatabase database) {
  database.execSQL(DATABASE_CREATE);
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    // TODO Auto-generated method stub
    Log.w(DataBaseHelper.class.getName(),
            "Upgrading database from version " + oldVersion + " to "
                + newVersion + ", which will destroy all old data");
        db.execSQL("DROP TABLE IF EXISTS " + TABLE_HISCORES);
        onCreate(db);


}

}

需要添加/更改哪些内容?

EN

回答 1

Stack Overflow用户

发布于 2013-05-12 18:11:19

您可以在SqLite查询浏览器(http://sourceforge.net/projects/sqlitebrowser/)中打开SQLite数据库并在其中添加列。在那里添加列之后,您可以将项目中正在使用的.db文件替换为添加了新列的文件。

希望它能帮上忙!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16506216

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档