[发明专利]一种SQLite数据库文件恢复删除记录的方法和装置在审
申请号: | 201610991027.0 | 申请日: | 2016-11-10 |
公开(公告)号: | CN106599048A | 公开(公告)日: | 2017-04-26 |
发明(设计)人: | 唐鹏;陈明;魏丽珍;张婷;梁煜麓;罗佳 | 申请(专利权)人: | 厦门安胜网络科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F11/14 |
代理公司: | 厦门市精诚新创知识产权代理有限公司35218 | 代理人: | 张伟星 |
地址: | 361000 福建省厦门市*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提出一种SQLite数据库文件恢复删除记录的方法和装置,从解析SQLite结构开始,获取SQLite文件编码方式、页大小信息,建立每张表字段个数和类型的基础库,实现空闲页与基础库关联,对空闲块(free_block)进行是否覆盖和完整性校验,结合free_block能提取的已知数据参数,将丢失情况进行分类,快速的重构删除记录的控制头信息,实现SQLite删除记录的恢复。本发明对每张表的字段个数和类型基础库的建立;对空闲块进行完整性校验,提高恢复准确率;借助相邻未删除数据单元的Rowid计算出空闲块的Rowid宽度;利用空闲块大小推算重构出空闲块的存储结构中被抹掉的前4个字节。因此本发明能通用的、快速的、精确的实现SQLite删除记录的数据恢复,相比传统方法则提高了恢复速度和恢复准确率。 | ||
搜索关键词: | 一种 sqlite 数据库文件 恢复 删除 记录 方法 装置 | ||
【主权项】:
一种SQLite数据库文件恢复删除记录的方法,其特征在于,包括步骤:S01、解析数据库结构,创建所有表字段信息的基础库;S02、遍历空闲子页,将空闲子页与基础库关联;S03、获取未删除数据记录单元的Rowid,构建完整的空闲块链;S04、校验空闲块链中空闲块有效性,保存有效的空闲块并组成有效空闲块链;S05、根据空闲子页与基础库关联信息获取有效空闲块中包含的字段个数和字段类型;S06、计算有效空闲块控制头信息:S061、计算有效空闲块的Rowid宽度;S062、计算有效空闲块的Payload_Size宽度;S063、计算有效空闲块的Payload_Size值,定位到Header_Size偏移位置;S064、计算有效空闲块Header_Size的值和宽度;S07、重构有效空闲块的数据记录单元存储结构;S08、遍历整个有效空闲块链,恢复删除记录数据。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门安胜网络科技有限公司,未经厦门安胜网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610991027.0/,转载请声明来源钻瓜专利网。
- 上一篇:一种信息的推送方法及装置
- 下一篇:一种决策表数据约简方法