SQLite DBHelper 跨版本更新数据库
来源:互联网 发布:linux 禁止ip访问 编辑:程序博客网 时间:2024/05/21 04:22
在跨版本升级的时候,每一次的数据库修改都能被全部执行到。
比如用户当前是从第二版程序升级到第三版程序的,那么case 2 中的逻辑就会执行。
而如果用户是直接从第一版程序升级到第三版程序的,那么case 1 和case 2 中的逻辑都会执行。使用这种方式来维护数据库的升级,不管版本怎样更新,都可以保证数据库的表结构是最新的。
public class MyDBHelper extends SQLiteOpenHelper { private Context mcontext; public static final String CREATE_BOOK="create table book(" +"id integer primary key autoincrement," +"author text," +"price real," +"name text)" ; public static final String CREATE_CATEGORY="create table category(" +"id integer primary key autoincrement," +"category_name text," +"category_code integer)"; public MyDBHelper(Context context, String name, CursorFactory factory, int version) { super(context, name, factory, version); mcontext=context; } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(CREATE_BOOK); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { switch(oldVersion){ case 1: //更新数据库时分级更新,每一个case后没有break db.execSQL(CREATE_BOOK); case 2: db.execSQL(CREATE_CATEGORY); case 3: db.execSQL("alter table book add column category_id integer"); break; } }}
0 0
- SQLite DBHelper 跨版本更新数据库
- Android Sqlite 数据库版本更新
- Android SQLite数据库版本更新
- Android Sqlite 数据库版本更新
- Android Sqlite 数据库版本更新
- Android Sqlite 数据库版本更新
- android SQLite更新数据库版本最佳写法
- Android之完成SQLite数据库版本更新的过程熟悉
- android sqlite自定义DBHelper
- sqlite 数据库更新
- Sqlite 数据库更新 iOS
- 安卓sqlite数据库简单的增删改查和数据库版本更新
- App版本更新时对SQLite数据库升级或者降级遇到的问题
- App版本更新时对SQLite数据库升级或者降级遇到的问题
- App版本更新时对SQLite数据库表的修改问题
- Android版本更新时对SQLite数据库升级或者降级遇到的问题
- App版本更新时对SQLite数据库升级或者降级遇到的问题
- App版本更新时对SQLite数据库升级或者降级遇到的问题
- SparkSQL简介
- 使用python获取网页编码格式
- AngularJS-模块化
- java写的排序(冒泡排序,插入排序,选择排序,快速排序)
- zookeeper-01-基本概念.md
- SQLite DBHelper 跨版本更新数据库
- 【Android 基础】Animation 动画介绍和实现
- Apache负载均衡设置的三大策略原则
- 深入理解Linux中内存管理
- linux有关ifconfig的解决方法
- 树莓派驱动6轴传感器MPU6500与SPI初体验(二)
- SQL Server 由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作
- 前后端分离势在必行!
- 127. Word Ladder