[問題] Sqlite沒辦法onUpgrade

看板AndroidDev作者 (真。假凱文)時間14年前 (2012/02/18 00:22), 編輯推噓1(105)
留言6則, 3人參與, 最新討論串1/1
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // TODO Auto-generated method stub Log.d(TAG, "ONUPGRADE " + oldVersion +" and " + newVersion); for (int i = 0; i < DATABASE_TABLE[i].length(); i++) { String sql = "DROP TABLE IF EXISTS " + DATABASE_TABLE[i]; Log.d(TAG,sql); db.execSQL(sql); Log.d(TAG,"db.exe"); } Log.d(TAG,"After"); onCreate(db); } 從Log看到 Sql與db.exe 都有跑了出來幾次,所以迴圈應該正常執行 但,卻看不到 After這一段Log 程式就錯誤重開了 想請問我該從哪一段去除錯呢? 謝謝 >"< -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.124.77.157

02/18 00:52, , 1F
我發現竟然是 迴圈有問題!? 可是到底錯在哪邊??
02/18 00:52, 1F

02/18 00:56, , 2F
我猜是length()的問題,因為drop table之後會少一個table
02/18 00:56, 2F

02/18 01:07, , 3F
我的Table只有三個["Student","Class","Subject"]
02/18 01:07, 3F

02/18 01:11, , 4F
謝謝二樓!! 我大概知道從哪個方向去除錯了
02/18 01:11, 4F

02/18 12:38, , 5F
for(... ; i<DATABASE_TABLE.length() ; ...)
02/18 12:38, 5F

02/18 12:39, , 6F
命名搞好就不會有問題了。DATABASE_TABLES 這是array
02/18 12:39, 6F
文章代碼(AID): #1FFdxT1c (AndroidDev)
文章代碼(AID): #1FFdxT1c (AndroidDev)