zoukankan      html  css  js  c++  java
  • android的Afinal框架下的数据库更新

    项目需要,版本升级时给表添加了一些新的字段,发现出现异常。

    解决方法:监听数据库的版本号,更新数据库。

    创建FinalDb对象时使用如下的构造函数,监听版本号的变化:

    db = FinalDb.create(getActivity(), "chat.db", true, 3, dbUpdateListener);

    然后重写DbUpdateListener,

    DbUpdateListener dbUpdateListener = new FinalDb.DbUpdateListener() {
            @Override
            public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
                if (tabbleIsExist(db, "chat_messages")) {
                    db.execSQL(VERSION_3_SQL_ADD_COLUMN_HAS_PRAISED);
                }
    
                if (tabbleIsExist(db, "chat_conversations")) {
                    db.execSQL(VERSION_3_SQL_ADD_COLUMN_ACCESSTOKEN);
                    db.execSQL(VERSION_3_SQL_ADD_COLUMN_ISLOGIN);
                }
            }
        };

    在onUpgrade()方法里面可以自定义操作,一般是执行添加表字段的操作。

    private String VERSION_3_SQL_ADD_COLUMN_HAS_PRAISED = "alter table chat_messages add column has_appraised varchar(50)";
  • 相关阅读:
    js使用笔记
    rabbit-mq使用官方文档
    tomcat Enabling JMX Remote
    Venom的简单使用
    Random模块
    时间模块
    shulti模块简述
    Python的os模块
    Python压缩及解压文件
    Kali的内网穿透
  • 原文地址:https://www.cnblogs.com/Jackie-zhang/p/5179286.html
Copyright © 2011-2022 走看看