android数据库升级,在android中如何管理数据库的升级版本控制

1,在android中如何管理数据库的升级版本控制建立一个类,继承SQLiteOpenHelper,实现它的方法,其中有方法onUpgrade(),升级、版本控制这些都在这里面去做在android中 , 应用的数据是私有的,你要得到其他应用的数据,可以通过contentprovider来实现 。
2 , android数据库内容更新用SQLite语句UPDATE TABLE SET id=id-1 WHERE id>3通过cursoradapter将数据库的数据读取出来,(记得设置权限),然后将cursor通过intent传到第二个activity中 , 然后通过listview显示出来 。大概思路就是这样 。【android数据库升级,在android中如何管理数据库的升级版本控制】
3,怎么升级SQLite数据库SQLite数据库的升级做Android应用,不可避免的会与SQLite打交道 。随着应用的不断升级,原有的数据库结构可能已经不再适应新的功能 。这时候 , 就需要对SQLite数据库的结构进行升级了SQLite提供了ALTER TABLE命令,允许用户重命名或添加新的字段到已有表中,但是不能从表中删除字段 。并且只能在表的末尾添加字段,比如,为 Subscription添加两个字段:1 ALTER TABLE Subscription ADD COLUMN Activation BLOB; 2 ALTER TABLE Subscription ADD COLUMN Key BLOB;另外,如果遇到复杂的修改操作 , 比如在修改的同时,需要进行数据的转移 , 那么可以采取在一个事务中执行如下语句来实现修改表的需求 。1. 将表名改为临时表ALTER TABLE Subscription RENAME TO __temp__Subscription;2. 创建新表CREATE TABLE Subscription (OrderId VARCHAR(32) PRIMARY KEY ,UserName VARCHAR(32) NOT NULL ,ProductId VARCHAR(16) NOT NULL);3. 导入数据INSERT INTO Subscription SELECT OrderId, “”, ProductId FROM __temp__Subscription;或者INSERT INTO Subscription() SELECT OrderId, “”, ProductId FROM __temp__Subscription;* 注意 双引号”” 是用来补充原来不存在的数据的4. 删除临时表DROP TABLE __temp__Subscription;通过以上四个步骤,就可以完成旧数据库结构向新数据库结构的迁移,并且其中还可以保证数据不会应为升级而流失 。如果遇到减少字段的情况,也可以通过创建临时表的方式来实现 。super(context, DATABASE_NAME, null, DATABASE_VERSON);你数据库版本不更新(int DATABASE_VERSON),onUpgrade不会被调用网络传输数据加密 , 直接对数据进行加密,在服务端解密就可以了吧 。本地保存的数据只能是保存在native 的sqlite里,然后对数据库文件加密

    推荐阅读