目錄
情況2:用戶已經安裝了軟件,數據庫版本升級,相當於覆蓋安裝v1升級v2
步驟二:在oncreate和onUpgrade方法中都添加語句 新用戶走oncreate 老用戶覆蓋安裝走onUpgrade方法
簡介
前景 數據庫當前版本v1,要升級到v2,涉及到下面兩個場景
- 情況1:新安裝的軟件
- 情況2:用戶已經安裝了軟件,數據庫版本升級,相當於覆蓋安裝v1升級v2
情況1:新安裝的軟件
數據庫創建執行在 public void onCreate(SQLiteDatabase db) 方法中,
不走 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) 升級
所有操作放到oncreate即可,用戶安裝後數據庫版本直接是v2
情況2:用戶已經安裝了軟件,數據庫版本升級,相當於覆蓋安裝v1升級v2
這時候,不走oncreate方法,直接走 onUpgrade
步驟一:升級數據庫版本 DATABASE_VERSION
步驟二:在oncreate和onUpgrade方法中都添加語句 新用戶走oncreate 老用戶覆蓋安裝走onUpgrade方法
比如v1升級v2,添加新的列
oncreate中:增加新的列字段即可
onUpgrade中:執行增加列的語句
String sql = "ALTER TABLE " + “table_name”+ " ADD " + "new_order" + " TEXT ";
db.execSQL(sql1);
所以,數據庫版本升級時,onUpgrade 要注意