2012-09-05 3 views
3

데이터베이스 버전을 업데이트 할 때 모든 테이블이 삭제되지는 않습니다 (기본 동작으로 생각됩니다). 다른 일을해야합니까?GreenDAO onUpdate

+0

당신은 스키마를 변경한다는 뜻입니까? DB 스키마를 변경하려는 경우. Generator에서 스키마 버전을 변경하고 코드를 다시 생성해야합니다. 또는 DB를 업그레이드 할 때 DB 마이그레이션을 수행하여 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 (DB, true)를 확인합니다 확인하십시오; 사실이고 또 다시 문제가 있습니다 여기에 디버그가 있습니다

관련 문제