2012-02-01 17 views
-1

我的數據庫有一個很大的問題。DataBase的問題Android

這是我以前有創建數據庫的代碼:

public static void initDatabase(Context context){ 
    db = context.openOrCreateDatabase(DATABASE_NAME, SQLiteDatabase.OPEN_READWRITE, null); 
    db.execSQL("CREATE TABLE IF NOT EXISTS " + 
      TABLE_NAME + " (number TEXT, name TEXT);"); 
    db.close(); 
    Log.i(TAG, "Database opened ok"); 
} 

的問題是,現在,我需要添加一個新表的新信息。 如果我以同樣的方式創建一個新表,那麼當它嘗試訪問數據庫時,我的應用程序原因出現問題,它會中斷。

任何人都可以幫助我?我不太清楚如何在Android中正確製作數據庫。

編輯:

這是新表的代碼....

public static void initDatabase(Context context){ 
db = context.openOrCreateDatabase(DATABASE_NAME, SQLiteDatabase.OPEN_READWRITE, null); 
db.execSQL("CREATE TABLE IF NOT EXISTS " + 
     TABLE_NAME + " (tlf TEXT, name TEXT);"); 
db.close(); 
Log.i(TAG, "Database opened ok"); 

}

這就是爲什麼我didn't前加入它,因爲它是另一個表這幾乎與另一個相同......

編輯並解決:

有必要使用SQLiteOpenHelper類中的onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)方法來能夠更新我的數據庫表。 欲瞭解更多信息:https://developer.android.com/reference/android/database/sqlite/SQLiteOpenHelper.html

無論如何感謝大家!

+1

請分享,增加了新表,並在logcat中 – 2012-02-01 13:09:23

+1

錯誤請把該解決方案在它自己的答案,並接受它,所以這個問題可以搬出懸而未決標籤的代碼 – 2012-07-01 16:24:20

回答