2012-01-18 33 views

回答

3

您創建的每個數據庫都有一個版本號。這樣,如果升級應用程序(爲現有數據的升級執行必要的數據庫更改),您可以跟蹤它們。

private static class OpenHelper extends SQLiteOpenHelper { 

    OpenHelper(Context context) { 
    super(context, DATABASE_NAME, null, DATABASE_VERSION); 
    } 

    @Override 
    public void onCreate(SQLiteDatabase db) { 
    db.execSQL("CREATE TABLE " + TABLE_NAME + " 
     (id INTEGER PRIMARY KEY, name TEXT)"); 
    } 

    @Override 
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 
    Log.w("Example", "Upgrading database, this will drop tables and recreate."); 
    db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME); 
    onCreate(db); 
    } 

onUpgrade將處理所有必要的數據庫升級:如果你看一下下面的代碼版本號必須從1

開始。有時你會選擇只銷毀(丟棄)當前數據庫並創建一個新數據庫。

+0

如何獲取數據庫的olderversion版本的值 – shvivek 2012-01-18 07:10:50

+0

它在'onUpgrade'回調中傳給你。它被稱爲'oldVersion'。 – DanielS 2012-01-24 12:00:49

-1

它似乎你已經設置以前的版本爲0,從手機中刪除你的應用程序,重新安裝它,確保新版本比以前更大。

相關問題