【Android】数据库的简单应用——升级数据库
假如我们已经创建好了一个数据库,随着功能需求的增加,想在数据库中再添加一个表,如果直接在之前的代码中插入一个表,会发现创建表失败,这是因为该数据库已经存在。该如何解决呢?
1、卸载程序,重新编译安装。
这是一个最简单直接的方法,但是只是为了多一个表就如此“暴力”,显得十分极端,也不恰当。
2、升级数据库
修改代码
public class MyDatabaseHelper extends SQLiteOpenHelper { …… @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { db.execSQL("drop table if exists User"); db.execSQL("drop table if exists Category"); onCreate(db); } }
在Upgrade()方法中新增了drop语句,如果该表已经存在,则先删除该表再重新创建,如果该表不存在则直接创建
在MainActivity中只需要传入一个比之前的版本号更大的数字进去就可以了