public class DBHelper extends OrmLiteSqliteOpenHelper { public static final String DB_NAME = "yaotuo.db"; public static final int DB_VERSION = 4; //更新时候只需要修改这里就可以了 private static DBHelper mDbHelper; private Dao<User, Integer> userDao = null; private Dao<Jw, Integer> jwDao = null; public DBHelper(Context context) { super(context, DB_NAME, null, DB_VERSION); } public static DBHelper getInstance(Context context){ if(mDbHelper == null) { mDbHelper = new DBHelper(context); } return mDbHelper; } @Override public void onCreate(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 public void onUpgrade(SQLiteDatabase sqLiteDatabase, ConnectionSource connectionSource, int i, int i2) { 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了,会调用这个,让你做一些操作,比方说将以前的表删除掉, 或者其他的
ormlite 中的onUpgrade,布布扣,bubuko.com
原文地址:http://blog.csdn.net/huntinggo/article/details/37903655