[发明专利]一种终端数据库升级方法及相关装置有效
| 申请号: | 201210575975.8 | 申请日: | 2012-12-26 |
| 公开(公告)号: | CN103902562B | 公开(公告)日: | 2017-11-10 |
| 发明(设计)人: | 林声炜;钟于胜;邹迪飞;朱德亮 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 深圳市深佳知识产权代理事务所(普通合伙)44285 | 代理人: | 唐华明 |
| 地址: | 518031 广东省深圳*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 终端 数据库 升级 方法 相关 装置 | ||
技术领域
本发明涉及数据处理领域,尤其涉及一种终端数据库升级方法及相关装置。
背景技术
在终端技术高速发展当代社会,终端的应用程序的版本更新也非常快;在日常应用中,为了及时的使用到应用程序的最新功能,或为了及时的对木马、病毒、垃圾软件等不良载体进行防御,经常需要对终端中一些应用程序的版本进行升级或更新。
目前现有的应用程序的版本升级方法主要由以下两种:
现有技术一,对应用程序的旧版本的数据库进行彻底地清除,保证新版本和旧版本之间的数据不会产生冲突。该方案的有点是不用管理不同软件版本之间的升级带来的数据迁移,以及遗留数据带来的使用不匹配问题。不过,现有技术一所带来的是用户体验不佳的问题,由于应用程序的版本彻底的被更新,用户之前留下的一些操作记录和设置习惯也被完全的清楚,用户需要重新设置一些必要参数,并且,一些根据用户的操作习惯而形成的一些便捷方式的记录(如,输入法对一些常用词汇进行优先显示的记录,和登录信息的记录等)也会被清除掉了,用户又需要重新进行适应;如此,则给用户带来了较大的不便。
现有技术二,对应用程序的数据库进行维护,不同版本之间的升级,采用不同的数据迁移逻辑。安卓系统中软件开发工具包(SDK,Software Development Kit)定义了每个数据库的一个版本号,在对目标应用进行版本的更新时,安卓系统的数据库会触发一种回调方法,将旧版本中与用户操作和设置相关的数据信息完整的保留下来,并根据指定的地址对这些被保留的数据信息进行迁移。该方案的优点是在目标应用的版本进行更新的过程中,与用户操作和设置相关的数据得以保存;但是,由于版本更新是一个经常发生的操作,随着版本数量的增加,逻辑分支将变得非常庞大,工作量很大,而且不利于对数据库的维护,在旧有数据进行回调时容易出错。
发明内容
本发明实施例提供了一种终端数据库升级方法及相关装置,用于在保留用户的操作习惯和设置的前提下,对目标应用的数据库进行有选择的更新,使得目标应用的数据库所占用的存储空间减小。
本发明第一方面提供的终端数据库升级方法,包括:
在目标应用进行版本更新之时,分别获取所述目标应用在更新前的第一版本对应的第一业务表信息和更新后的第二版本对应的第二业务表信息;根据所述第一业务表信息和所述第二业务表信息的对比,确定业务表信息发生改变的业务表;删除所述发生改变的业务表所对应的用户信息。
结合本发明第一方面提供的提供的终端数据库升级方法,第一可能实现的方式包括:
所述业务表信息包括:各个业务表对应的子版本号;
所述根据第一业务表信息和所述第二业务表信息的对比,确定业务表信息发生改变的业务表,包括:
根据第一业务表信息和所述第二业务表信息的对比,确定业务表的子版本号发生改变的业务表。
结合本发明第一方面提供的提供的终端数据库升级方法,第二可能实现的方式包括:
所述分别获取所述目标应用在更新前的第一版本对应的第一业务表信息和更新后的第二版本对应的第二业务表信息,包括:
通过应用程序编程接口API的回调函数在所述第二版本的代码信息中获取所有的第一业务表,并根据所述第一业务表中的第一业务表信息生成第二版本表,所述第二版本表中包含有所述第二版本的各个业务表对应的子版本号;
加载所述目标版本的数据库中包含有所述第一业务表信息的第一版本表,所述第一版本表中包含有所述第一版本的各个业务表对应的子版本号。
结合第二可能实现的方式,本发明第三种可实现的方式包括:所述根据第一业务表信息和所述第二业务表信息的对比,确定业务表信息发生改变的业务表,包括:将所述第一版本表和第二版本表进行对比,确定业务表的子版本号发生改变的业务表。
结合本发明第一方面或第一种可以实现方式提供的方法,本发明第四种可能实现的方式包括:
所述第一业务表信息包括:所述第一版本中各个业务表对应的业务字段;
所述第二业务表信息包括:所述第二版本中各个业务表对应的业务字段;
所述根据第一业务表信息和所述第二业务表信息的对比,确定业务表信息发生改变的业务表,包括:
根据所述第一业务表信息中和第二业务表信息中业务字段的对比,确定业务字段发生改变的业务表。
结合本发明第四种可以实现方式提供的方法,本发明第五种可能实现的方式包括:
所述删除发生改变的业务表对应的用户信息,包括:删除所述发生改变的业务表内发生改变的业务字段。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210575975.8/2.html,转载请声明来源钻瓜专利网。





