# Android数据库分库与全量更新 **Repository Path**: YuBaoZi/AndroidShuJuKuFenKuYuQuanLiangGengXin ## Basic Information - **Project Name**: Android数据库分库与全量更新 - **Description**: 设计一套app的文件存储架构和用户登录体系来支持不同的业务需要,要求拓展性好,原理清晰简单;本文以实现多用户登陆为例,通过数据库分库和数据库全版本升级,来展示APP数据库架构设计与更新 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: http://blog.csdn.net/baopengjian/article/details/78593643 - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2017-11-23 - **Last Updated**: 2020-12-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Android数据库分库与全量更新 设计一套app的文件存储架构和用户登录体系来支持不同的业务需要,要求拓展性好,原理清晰简单;本文以实现多用户登陆为例,通过数据库分库和数据库全版本升级,来展示APP数据库架构设计与更新 需求: - APP支持多用户切换登陆; - 多用户的信息通过数据库存储本地,数据库支持升级,拓展性强,不同用户信息不会相互影响; 技术实现: 1、新建一个总数据库,用来存储所有用户的列表; 2、不同用户登录时,新建一个该用户的文件夹(不是数据库,这样该用户拥有的其它类型数据也可以存到这个文件夹下);文件夹下新建用户对应的数据库 3、不同用户登录时,查找总表,有用户数据,修改状态为登录,没有该用户,插入该用户;将其它用户的状态设置为未登陆,新建一个工具类,提供所有用户列表和当前登陆的用户; 4、app的有多个迭代版本,数据库的更新、新建语句复杂;将所有数据库操作语句分类存到一个脚本(xml)文件中去;解析文件,根据不同版本,来拼接数据库操作语句; 5、Android中数据库不支持直接修改列的字段名称 数据库全量升级: 1、备份数据库 2、修改数据库的表名 3、在数据库中创建新的表 4、将数据从旧的表中拷贝到新表中去 5、删除备份数据库,旧表