https://blog.csdn.net/huntinggo/article/details/37903655
ormlite 中的onUpgrade
2014年07月17日 11:44:12 HuntingGo 阅读数 1648
publicclassDBHelperextendsOrmLiteSqliteOpenHelper{
publicstaticfinalString DB_NAME ="yaotuo.db";
publicstaticfinalintDB_VERSION =4;//更新时候只需要修改这里就可以了
privatestaticDBHelper mDbHelper;
privateDao userDao =null;
privateDao jwDao =null;
publicDBHelper(Context context){
super(context, DB_NAME,null, DB_VERSION);
}
publicstaticDBHelpergetInstance(Context context){
if(mDbHelper ==null) {
mDbHelper =newDBHelper(context);
}
returnmDbHelper;
}
@Override
publicvoidonCreate(SQLiteDatabase sqLiteDatabase, ConnectionSource connectionSource){
try{
System.out.println("create table");
TableUtils.createTable(connectionSource, User.class);
TableUtils.createTable(connectionSource, Jw.class);
}catch(SQLException e) {
e.printStackTrace();
}
}
@Override
publicvoidonUpgrade(SQLiteDatabase sqLiteDatabase, ConnectionSource connectionSource,inti,inti2){
try{
System.out.println("drop jw class");
TableUtils.dropTable(connectionSource, Jw.class,true);//所有的表都必须得删除的, 否则在onCreate方法中会出现建表异常
TableUtils.dropTable(connectionSource, User.class,true);
onCreate(sqLiteDatabase, connectionSource);
}catch(SQLException e) {
e.printStackTrace();
}
}
}
当数据库版本号发生变化的时候的调用onUpdate。就是你以前的版本是1,然后升级成为2了,会调用这个,让你做一些操作,比方说将以前的表删除掉, 或者其他的
网友评论