2012-09-05 74 views
3

當我更新數據庫版本時,它並沒有刪除所有的表格(以爲我會是默認行爲)。我還需要做其他事嗎?GreenDAO onUpdate

+0

你的意思是你改變架構?如果你想改變數據庫模式。您應該在Generator中更改模式版本,然後重新生成代碼。或者當你升級數據庫時你想做一些數據庫遷移,所以你想自定義onUpgrade部分? –

回答

2

您正在使用哪種SQLiteOpenHelper?

檢查您生成的DaoMaster類。它有一個內部類DevOpenHelper,用於刪除所有更新表。

2

請檢查DaoMaster.java

@Override 
     public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 
      Log.i("greenDAO", "Upgrading schema from version " + oldVersion + " to " + newVersion + " by dropping all tables"); 
      dropAllTables(db, true); 
      onCreate(db); 
     } 

確保dropAllTables(分貝,真正的);有真實存在的問題在這裏調試