1. 程式人生 > >android應用使用sqlite資料庫時,版本更新的相關問題。

android應用使用sqlite資料庫時,版本更新的相關問題。

首先要明確,資料庫的版本跟應用的版本不是一回事,資料庫的版本是自己在獲取資料庫時設定的。具體來說是在構造方法

public SQLiteOpenHelper(@Nullable Context context, @Nullable String name,
        @Nullable CursorFactory factory, int version) {
    this(context, name, factory, version, null);
}中的最後一個引數設定。只能是整數。

如下面的方法

如果下面SqliteTool 繼承 SQLiteOpenHelper,

SqliteTool mydbtool=new SqliteTool(getApplicationContext(),"user.db",null,1);
SQLiteDatabase db=mydbtool.getWritableDatabase();

這樣獲取到的資料庫版本就是1

如果應用更新了,把版本引數改成2

這樣再獲取資料庫連結物件時,就會先觸發 onUpgrade 方法,而在 onUpgrade可以做一些資料庫升級的邏輯操作。

這樣,就實現了資料庫的升級操作。