0
在版本創建我的數據庫時出現以下錯誤。我在創建我的數據庫的版本時收到錯誤
01-18 12:08:01.157: ERROR/AndroidRuntime(3079): Caused by: java.lang.IllegalArgumentException: Version must be >= 1, was 0
請幫我解決這個問題。
在版本創建我的數據庫時出現以下錯誤。我在創建我的數據庫的版本時收到錯誤
01-18 12:08:01.157: ERROR/AndroidRuntime(3079): Caused by: java.lang.IllegalArgumentException: Version must be >= 1, was 0
請幫我解決這個問題。
您創建的每個數據庫都有一個版本號。這樣,如果升級應用程序(爲現有數據的升級執行必要的數據庫更改),您可以跟蹤它們。
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
它在'onUpgrade'回調中傳給你。它被稱爲'oldVersion'。 – DanielS 2012-01-24 12:00:49