Android SQLite数据库升级
来源:互联网 发布:网络棋牌上有赢钱的吗 编辑:程序博客网 时间:2024/05/16 12:06
版本升级需要数据库升级时,需要保留原有版本的缓存数据;需要对数据库进行增量升级,有几种解决方案:
方案一:
先将现有数据库文件复制备份到SD卡,新建好新的数据库后,再将SD卡上的备份数据读取写入到新的数据库。处理繁琐,版本间隔大数据表结构有修改处理麻烦。
方案二:
1、 新增表,直接增加表。
2、 针对表结构有修改的数据表;先将原表oldTable修改表名称为“newTable”,新建新表,将原表中数据复制到新表中。
跟方案一类似,版本间隔多,表结构修改多时,处理繁琐麻烦。
//修改表名称ALTER TABLE oldTable RENAME TO newTable;//从旧表中查询出数据 并插入新表INSERT INTO newTable SELECT culumName FROM oldTable
方案三:
一个版本一个版本升级,不是一步升级到当前的数据库版本;假设当前的版本是5,升级前的版本是2;该方式是先升级到3,在升级到4,在升级到5。
优点:只需要处理当前版本和上一个版本的升级,不需要关心其他版本数据库的修改点。
缺点:由于是一个版本一个版本往上升级,升级的版本间隔较大时, 花费的时间可能会比较多。
如下,使用switch方式,注意case间不能有break。
switch (oldVersion) {case 2:{ //修改表1 //增加表2}case 3:{ //删除表1 //修改表2 //增加表3}default:break;}
一些修改表的SQL语句
//新建表CREATE TABLE IF NOT EXISTS tableName ( columId INTEGER PRIMARY KEY AUTOINCREMENT, colum2 TEXT NOT NULL)//删除表DROP TABLE IF EXISTS tableName//修改表名称ALTER TABLE oldTable RENAME TO newTable;//增加字段ALTER TABLE tableName ADD COLUMN newColum TEXT
0 0
- Android SQLite数据库升级
- Android SQLite升级数据库
- Android Sqlite 数据库升级
- Android sqlite数据库升级解决方案
- android中sqlite数据库升级
- Android Sqlite数据库版本升级管理初探
- android中sqlite数据库升级方案
- android之Sqlite升级数据库解决方案
- android之SQLite之数据库升级
- android开发之sqlite数据库升级
- Android SQLite数据库版本升级原理解析
- Android使用SQLite数据库版本升级
- Android SQLite数据库版本升级原理解析
- Android SQLite数据库版本升级原理解析
- Android sqlite数据库升级表字段
- Android SQLite数据库版本升级原理解析
- Android SQLite数据库版本升级原理解析
- Android SQLite数据库版本升级原理解析
- Linux下查看Nginx等的并发连接数和连接状态。
- ubuntu 安装redis
- C:CLOSE_WAIT状态的原因与解决方法
- ahjesus Axure RP 7.0注册码
- JS 实现replaceAll函数
- Android SQLite数据库升级
- Unable to find the wrapper "https"错误的解决办法
- Bundle管理vim插件
- 30分钟学会使用grunt打包前端代码(三)
- ssh公匙私匙
- ElasticSearch template机制
- 算法练习-连号区间数
- 【HTML5初涉】H5与H4的区别
- 2016华为软件精英挑战赛:赛题及其答疑汇总