[发明专利]一种MDB文件表格的恢复方法及其系统在审
申请号: | 201610111595.7 | 申请日: | 2016-02-29 |
公开(公告)号: | CN105677914A | 公开(公告)日: | 2016-06-15 |
发明(设计)人: | 张宇卉;沈长达;吴少华;滕达 | 申请(专利权)人: | 厦门市美亚柏科信息股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 深圳市博锐专利事务所 44275 | 代理人: | 张明 |
地址: | 361008 福建省厦门*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 mdb 文件 表格 恢复 方法 及其 系统 | ||
技术领域
本发明涉及数据库文件数据分析处理领域,具体说的是一种MDB文件表格 的恢复方法及其系统。
背景技术
MicrosoftOfficeAccess软件开发的MicrosoftJET数据库提供一种MDB数 据库文件格式。ACCESS数据库本身是没有提供删除记录和删除表格恢复的功 能,因为它本身是一个实时增加、重组的数据库,没有办法全部缓冲删除的记 录。
Microsoft没有也不会提供MDB格式二进制组织方式,目前国内外已有的 研究资料也是说MDB中误删除的记录、误删除的表格是无法恢复的,因为 ACCESS数据库本身是没有物理删除和逻辑删除的概念的,一旦删除就无法恢 复了。也就是说针对于删除的数据,如果不考虑备份数据的话只有通过解析文 件的方法来进行恢复。
MicrosoftAccessMDB文件格式有Jet3和Jet4两种,而Jet格式的文件在创 建之初会有一部分初始化的数据。目前研究中发现MDB文件有一些固定的结构:
1、MDB文件由固定大小的页组成,文件中所有的数据都存储在页中,Jet3 格式中页的大小为2k,Jet4中页的大小为4k;
2、固有的系统表包括:窗体、宏、报表、模块、数据表、查询、列表等等。 他们在文件新建的时候就被创建,有着固定的偏移位置/入口,其中系统表 MSysObjects中包含所有表格的定义表格页的相对偏移地址;
3、每个页第一个字节就是类型定义签名。除了文件开始的页(包括文件版 本信息、密码等等)有着自身特有的签名,其它页的类型由每个页的签名标识。 页的种类有:数据库定义页(签名:0x00)、数据页(签名:0x01)、表格定义 页(签名:0x02)、中间索引页(签名:0x03)、叶子索引页(签名:0x04)、文 件已用页分布图(签名:0x05)、删除表格的表格定义页(签名:0x08)等等。
MDB文件表格相关页的说明:
对于一个表格(不管是系统表还是用户自己创建的表格)重要的页包括: 表格的定义页(一个表格唯一对应一个定义页)、索引页(包括中间索引页、叶 子索引页)、数据页(包括溢出页)。
MDB文件简单的分布结构如图1所示:
不管是系统表还是用户表,始终包括如图2所示的三部分:
表格不同页之间的联系如下:
1、表格定义页中的信息有:列/字段的定义(即段定义),具体包括列名称、 列类型、列的长度等,规定每一列所存储的数据类型;该表格的索引页的相对 偏移地址,指向中间索引页或者叶子索引页们,可以由中间索引页找到叶子索 引页。
2、索引页中包含的信息:表格定义页的相对偏移,中间索引页指向所有的 叶子索引页,叶子索引页中存储着表格数据页的相对偏移地址。
3、数据页包含的信息:表格定义页的相对偏移地址、正常的记录、删除的 记录、溢出数据等。当然数据也还包括备注页等等其他信息。
可见,表格定义页指向索引页,索引页指向数据页,而数据页和索引页都 指向表格定义页。因为MDB文件由页组成,所以文中提到的所有指向页均意为 相对于文件首页,该页的页偏移量。
在MicrosoftAccessMDB文件中删除整个表格的时候,会提示说不可恢复。 具体的,MDB文件表格的删除后,如果没有增加新的表格,即,所删除表格对 应数据页中的数据还存储在磁盘中的情况下,则除了该表格对应的表格定义页 特有的签名数据会改变之外,其他页的内容都将保持不变。因此,可以基于此 实现MDB文件表格的恢复。
发明内容
本发明所要解决的技术问题是:提供一种MDB文件表格的恢复方法及其系 统,实现已删除的MDB文件表格的恢复。
为了解决上述技术问题,本发明采用的技术方案为:
一种MDB文件表格的恢复方法,包括:
获取Jet格式的MDB文件;
扫描所述MDB文件,依据签名标识获取已删除表格的表格定义页,以及所 述表格定义页的偏移地址;
解析所述表格定义页,得到列定义信息;
依据签名标识获取所述MDB文件内的所有数据页;
依次判断所述所有数据页中的每一数据页记录的与其对应的表格定义页的 偏移地址是否为所述偏移地址,获取判断结果为是的数据页;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门市美亚柏科信息股份有限公司,未经厦门市美亚柏科信息股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610111595.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种适用于多种类型火灾的灭火器
- 下一篇:一种压力式比例混合装置