一.SQLite升级和降级需要考虑的细节 ①  SQLite升级: v3.0数据库版本 [onUpgrade 情况:n-1,onCreate 情况:1]                              1. v1.0 -->v3.0 onUpgrade                                     alter table t_message add column isdel bit default 0;                             …
Android开发涉及到的数据库采用的是轻量级的SQLite3,而在实际开发中,在存储一些简单的数据,使用SharedPreferences就足够了,只有在存储数据结构稍微复杂的时候,才会使用数据库来存储.而数据库表的设计往往不是一开始就非常完美,可能在应用版本开发迭代中,表的结构也需要调整,这时候就涉及到数据库升级的问题了. 数据库升级 数据库升级,主要有以下这几种情况: 增加表 删除表 修改表  增加表字段 删除表字段 增加表和删除表问题不大,因为它们都没有涉及到数据的迁移问题,增加表只是在…
Android使用SQLite数据库保存数据,那数据库版本升级是怎么回事呢,这里说一下. 一.软件v1.0 安装v1.0,假设v1.0版本只有一个account表,这时走继承SQLiteOpenHelper的onCreate,不走onUpgrade. 1.v1.0(直接安装v1.0) 二.软件v2.0 有2种安装软件情况: 1.v1.0   -->  v2.0              不走onCreate,走onUpgrade 2.v2.0(直接安装v2.0)          走onCrea…
Android使用SQLite数据库保存数据,那数据库版本升级是怎么回事呢,这里说一下. 一.软件v1.0 安装v1.0,假设v1.0版本只有一个account表,这时走继承SQLiteOpenHelper的onCreate,不走onUpgrade. 1.v1.0(直接安装v1.0) 二.软件v2.0 有2种安装软件情况: 1.v1.0   -->  v2.0              不走onCreate,走onUpgrade 2.v2.0(直接安装v2.0)          走onCrea…
Andoird的SQLiteOpenHelper类中有一个onUpgrade方法.帮助文档中只是说当数据库升级时该方法被触发.经过实践,解决了我一连串的疑问: 1. 帮助文档里说的"数据库升级"是指什么? 你开发了一个程序,当前是1.0版本.该程序用到了数据库.到1.1版本时,你在数据库的某个表中增加了一个字段.那么软件1.0版本用的数据库在软件1.1版本就要被升级了. 2. 数据库升级应该注意什么? 软件的1.0版本升级到1.1版本时,老的数据不能丢.那么在1.1版本的程序中就要有…
我们在实际开发中,有的时候需要储存或者备份比较复杂的数据.这些数据的特点是,内容多.结构大,比如短信备份等.我们知道SharedPreferences和Files(文本文件)储存这种数据会非常的没有效率.如果学过JavaWeb的朋友,首先可能想到的是数据库.当然了数据库是一个方案,那么是否还有其他的解决方案呢?今天我们在讲下Android笔记——Android中数据的存储方式(一) 提到的除了SharedPreferences和Files(文本文件)以外的其他几种数据储存方式:xml文件.SQL…
Google为Andriod的较大的数据处理提供了SQLite,他在数据存储.管理.维护等各方面都相当出色,功能也非常的强大.SQLite具备下列特点: 1.轻量级 使用 SQLite 只需要带一个动态库,就可以享受它的全部功能,而且那个动态库的尺寸想当小. 2.独立性 SQLite 数据库的核心引擎不需要依赖第三方软件,也不需要所谓的“安装”. 3.隔离性 SQLite 数据库中所有的信息(比如表.视图.触发器等)都包含在一个文件夹内,方便管理和维护. 4.跨平台 SQLite 目前支持大部分…
GreenDAO是一款非要流行的android平台上的数据库框架,性能优秀,代码简洁. 初始化数据库模型代码的时候需要使用java项目生成代码,依赖的jar包已经上传到我的资源里了,下载地址如下:http://download.csdn.net/detail/fancylovejava/8859203 项目开发中用到的就是GreenDAO数据库框架,需要进行数据库版本升级. 其实数据库版本升级比较麻烦的就是数据的迁移,data migration. 数据库版本升级有很多方法,按不同需求来处理.…
Android笔记之Android系统架构 h2{ color: #4abcde; } a{ color: blue; text-decoration: none; } a:hover{ color: red; text-decoration: underline; } .p1{ font-size: 22px; color: #787878; font-weight: bold; } .img1{ width: 644px; height: 525px; } p{ font-size: 16p…
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <But…