Access 是微软公司推出的基于Windows的桌面关系数据库管理系统,Access在很多地方得到广泛使用,例如小型企业,大公司的部门,喜爱编程的开发人员也专门利用它来制作处理数据的桌面系统。它也常被用来开发简单的WEB应用程序。
Access不仅是一个数据库,而且它具有强大的数据管理功能,它可以方便地利用各种数据源生成窗体、表单、查询、报表、应用程序等。
本文就结合Access数据库(数据库版本为Access2010,此方法也适用于最新版的Access数据库文件恢复提取)特征来阐述如何快速有效的恢复Access数据库文件中的数据。
01
Access文件存储原理
Access是通过页结构来管理数据的。每页的大小为4096Bytes,每页的第一个字节表示了该页的类型,主要有:
00数据库信息页,01数据页,02数据表结构页,04过渡页等
Access数据库读取数据的基本结构,如下所示,其中02页中记录了某表的管理信息,04页中记录了01数据页的页号,01页中记录了该表对应的数据,如下图:
Access数据库读取表结构的基本结构,如下所示,其中的00页固定为第一页,02页固定为第二页,04页中记录着01页的页号,01页表示数据页,但此处01页中不是记录某个数据表的数据,而是记录该数据库中所有的表的基本信息,如下图:
00页结构如下所示,其中记录数据库的基本信息:
01页结构如下所示,其中记录了数据信息:
02页结构,如下图:
04页结构,如下图:
02
Access的碎片重组恢复思路
通过对Access数据库的深入分析,发现当删除行或者表数据的时候,数据内容是不会存在变化的,仅仅是01数据页的管理信息发生了变化,相对于该数据页头偏移0x0F的值0F变成了CF,如下图:
根据数据行结构信息恢复出删除行数据,具体数据行结构信息如下所示:
通过以上对ACCESS数据库的存储结构深入分析,研究ACCESS数据库中数据发生删除时的情况变化,发现无论何种删除行为的发生,比如行数据被删除,表数据被删除,甚至是数据库文件被删除,都可以按照ACCESS数据库页的结构特征通过底层分析或者相应工具进行数据恢复和提取。
以上就是ACCESS数据库文件恢复提取技术的介绍,通过上述方法不仅能够快速高效提取ACCESS数据库数据,还能提取不能正常打开的数据库文件。
领取专属 10元无门槛券
私享最新 技术干货