2014-09-27 67 views
0

在Helper類的onUpgrade()方法中,我添加了一個新表。 不幸的是,logcat告訴我一個語法錯誤「ADD COLUMN」。Android SQLite onUpgrade(),創建新表

@Override 
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 

    if (newVersion > oldVersion) { 
      db.execSQL("CREATE TABLE denze ADD COLUMN field1 TEXT," + 
       "ADD COLUMN field2 TEXT," + 
       "ADD COLUMN field3 TEXT," + 
       "ADD COLUMN field4 TEXT"); 

    } 
    } 

回答

0

這不是合法的SQL。你需要一個「ALTER TABLE」查詢。

你沒有給出關於舊錶格的信息,但是如果你只是用「ALTER」取代「CREATE」,它可能就會起作用。

...順便說一下,你不需要檢查newVersionoldVersion更新。它總是會的。如果newVersion較小,將會調用onDowngrade方法。