ormlite 中的onUpgrade
阅读原文时间:2023年07月15日阅读:1

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 userDao = null;
private Dao 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了。会调用这个。让你做一些操作,例如说将曾经的表删除掉, 或者其它的

手机扫一扫

移动阅读更方便

阿里云服务器
腾讯云服务器
七牛云服务器

你可能感兴趣的文章