第一版只有book表 第二版加上category表 第三版为book表加上category_id 列
book表:这是升级后的原来没有category_id 列;
public static final String CREATE_BOOK = "create table Book ("
+ "id integer primary key autoincrement, "+ "author text, "
+ "price real, "
+ "pages integer, "
+ "name text, "
+ "category_id integer)";
public static final String CREATE_CATEGORY = "create table Category ("
+ "id integer primary key autoincrement, "
+ "category_name text, "
+ "category_code integer)";
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {switch (oldVersion) {
case 1:// 当你以老版本是1的时候进入,新增category表 升级到第二版
db.execSQL(CREATE_CATEGORY);
case 2://当你以老版本是2的时候进入,为book新增category_id 列。
db.execSQL("alter table Book add column category_id integer");
default:
}
}
注意switch没有加break 就是为了 如果用户的版本是1的话,可以直接升级到最新版3。