[发明专利]一种解析EDB数据库源文件中数据的方法有效
申请号: | 201711050230.9 | 申请日: | 2017-10-31 |
公开(公告)号: | CN107862023B | 公开(公告)日: | 2021-12-24 |
发明(设计)人: | 梁效宁;许超明;赵飞;何升 | 申请(专利权)人: | 四川巧夺天工信息安全智能设备有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/2455 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 641000 *** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 解析 edb 数据库 源文件 数据 方法 | ||
1.一种解析EDB数据库源文件中数据的方法,其特征在于包括以下步骤:
S100:构建所述EDB数据库的总表结构,所述总表表名为MSysObjects,所述总表结构见表1;
表1:总表结构
S200:解析所述EDB数据库源文件中根节点所在页的数据页的数据信息,将所述根节点所在页的数据页的数据信息填入所述总表结构作为总表;
S300:根据所述总表,构建子表结构;
S400:解析各个子表所在页的数据页的数据信息,将所述各个子表所在页的数据页的数据信息填入所述子表结构作为子表。
2.根据权利要求1所述的一种解析EDB数据库源文件中数据的方法,其特征在于,所述步骤S200包括以下步骤:
S201:获取所述数据页的数据信息;
S202:获取所述数据页的数据信息第2字节的内容;
S203:判断所述第2字节的内容是否为标志位0xA0,如果是,执行步骤S204,否则执行步骤S205;
S204:获取所述数据页的数据信息第3字节的内容,执行步骤S206;
S205:获取所述数据页的数据信息第1字节的内容;
S206:获取无效字节的偏移字节长度:当前所获取字节的内容为所述无效字节的偏移字节长度,并以当前字节的地址为起始地址,向后偏移2字节寻址所述无效字节的起始地址,所述无效字节的字节长度为所述无效字节的所述偏移字节长度;
S207:解析管理表字段:所述无效字节后连续4字节的内容为所述管理表字段,其中,
所述管理表字段的第1字节内容为连续非空的定长字段的个数,所述定长字段的Id取值范围为1至127;
所述管理表字段的第2字节的高位的内容为第一可变长字段管理表的长度因子,所述第一可变长字段管理表的长度等于所述长度因子加上1的和乘以2,所述第一可变长字段的字节长度不大于256字节,所述第一可变长字段的Id取值范围为128至255;
所述管理表字段的第3、第4字节的内容为寻址到所述第一可变长字段管理表的偏移长度;以所述管理表字段的第1字节地址为起始地址,向后偏移所述偏移长度,寻址到所述第一可变长字段管理表,所述偏移长度以小端格式存储;
S208:解析所述定长字段:读取所述管理表字段的第1字节内容,作为所述定长字段的个数,根据所述个数及所述总表结构中各个名称的字节长度,获取所述定长字段的数据;
S209:解析所述第一可变长字段,步骤S209包括:
S2091:解析所述第一可变长字段管理表:以所述管理表字段的第1字节地址为起始地址,向后偏移所述第一可变长字段管理表的偏移长度,寻址到所述第一可变长字段管理表,其中,
所述第一可变长字段管理表的内容以2字节为一组进行解析,所述组的内容为0x0B80,表示所述组所对应的字段数据为空;
至少一组的内容不为0x0B80且代表所述内容不为0x0B80的组所对应的字段数据的字节长度,所述字节长度以小端格式存储;
最后一组的内容表示非空的所述第一可变长字段的总字节长度,所述总字节长度减去所述最后一组之前的所有非空的所述第一可变长字段的字节长度,即为最后一组所对应的字段数据的字节长度,所述总字节长度以小端格式存储;
S2092:解析所述第一可变长字段数据:所述第一可变长字段数据存储于所述第一可变长字段管理表之后,各自对应于所述第一可变长字段管理表中所述不为0x0B80的组,所述第一可变长字段数据的字节长度为所述总字节长度;
S210:解析第二可变长字段,所述第二可变长字段的字节长度不限,所述第二可变长字段的Id取值范围为256至65535,步骤S210包括:
S2101:解析所述第二可变长字段管理表:所述第二可变长字段管理表存储于所述第一可变长字段数据之后的连续4字节中,包括:
非空字段号:步骤S2101中所述连续4字节的第1字节为所述非空字段号,且表示字段数据为非空;
标识位:步骤S2101中所述连续4字节的第2字节为固定的标识位;
寻址到所述第二可变长字段数据的偏移字节:步骤S2101中所述连续4字节的第3、第4字节为寻址到所述第二可变长字段数据的偏移字节且以小端格式存储,以所述第二可变长字段管理表的首地址为起始地址,向后偏移所述偏移字节,寻址到所述第二可变长字段数据;
S2102:解析所述第二可变长字段数据:每一所述第二可变长字段管理表之后,存储内容为所述第二可变长字段数据;
S211:判断是否解析完所有所述数据页的数据信息,如果是,结束流程,否则,执行步骤S201。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川巧夺天工信息安全智能设备有限公司,未经四川巧夺天工信息安全智能设备有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711050230.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:文化资源推荐系统
- 下一篇:一种汉字的学习方法及电子设备