DWG解析数据高效自动入库存储的方法、装置及存储介质制造方法及图纸

技术编号:38532784 阅读:8 留言:0更新日期:2023-08-19 17:05
本申请关于一种DWG解析数据高效自动入库存储的方法、装置及存储介质。具体方案为:过响应于接收到图层的图层数据,生成图层对应的待创建的属性数据表的表名;获取图层数据中的全部属性名;将全部属性名分别确定为属性数据表的字段名;基于表名、字段名和全部属性名各自对应的属性值,创建属性数据表。本申请能够提高建表效率以及表与属性值的适配度。高建表效率以及表与属性值的适配度。高建表效率以及表与属性值的适配度。

【技术实现步骤摘要】
DWG解析数据高效自动入库存储的方法、装置及存储介质


[0001]本申请涉及计算机
,尤其涉及一种DWG解析数据高效自动入库存储的方法、装置及存储介质。

技术介绍

[0002]相关技术中,绘图DWG文件解析后的对象为多个图层,由于每个图层所具有的属性个数及属性名各不相同,在将其存入关系型数据库时无法存储在同一张表中,而传统建表方法只能根据给定的字段名创建表结构,无法根据读取的数据自适应创建表结构,建表效率较低,表中的字段名与属性值的适配度较差。

技术实现思路

[0003]为此,本申请提供一种DWG解析数据高效自动入库存储的方法、装置及存储介质。本申请的技术方案如下:
[0004]根据本申请实施例的第一方面,提供一种DWG解析数据高效自动入库存储的方法,所述方法包括:
[0005]响应于接收到图层的图层数据,生成所述图层对应的待创建的属性数据表的表名;所述属性数据表用于在关系型数据库中存储所述图层数据;所述图层数据包括所述图层的属性名和所述图层的属性值;所述图层是通过对绘图DWG文件进行解析得到的;
[0006]获取所述图层数据中的全部属性名;
[0007]将所述全部属性名分别确定为所述属性数据表的字段名;
[0008]基于所述表名、所述字段名和所述全部属性名各自对应的属性值,创建所述属性数据表。
[0009]根据本申请的一个实施例,所述基于所述表名、所述字段名和所述全部属性名各自对应的属性值,创建所述属性数据表,包括:
[0010]基于所述表名和所述字段名,生成建表语句;
[0011]根据所述建表语句生成第一数据表;
[0012]基于所述属性值以及所述属性值各自对应的字段名,生成插入数据语句;
[0013]根据所述插入数据语句,将所述全部属性名各自对应的属性值分别插入所述第一数据表中,以创建所述属性数据表。
[0014]根据本申请的一个实施例,所述图层数据还包括图层名;所述方法还包括:
[0015]获取所述图层数据中的图层名;
[0016]将所述图层名和所述属性数据表的表名对应存储至元数据表中,以存储所述图层和所述属性数据表的对应关系。
[0017]根据本申请的一个实施例,所述响应于接收到图层的图层数据,生成所述图层对应的待创建的属性数据表的表名,包括:
[0018]响应于接收到所述图层的所述图层数据,随机生成一个唯一标识;
[0019]基于所述唯一标识,生成所述图层对应的待创建的所述属性数据表的表名。
[0020]根据本申请的一个实施例,所述图层有多个;所述方法还包括:
[0021]响应于接收到多个图层各自的图层数据,分别生成所述多个图层各自对应的待创建的属性数据表的表名;
[0022]分别获取多个图层数据中各自的全部属性名;
[0023]针对每个图层数据,获取所述图层数据中的全部属性名,将所述全部属性名分别确定为与所述全属性数据表的字段名,基于所述表名、所述字段名和所述全部属性名各自对应的属性值,创建所述属性数据表。
[0024]根据本申请实施例的第二方面,提供一种DWG解析数据高效自动入库存储的装置,所述装置包括:
[0025]第一生成模块,用于响应于接收到图层的图层数据,生成所述图层对应的待创建的属性数据表的表名;所述属性数据表用于在关系型数据库中存储所述图层数据;所述图层数据包括所述图层的属性名和所述图层的属性值;所述图层是通过对绘图DWG文件进行解析得到的;
[0026]第一获取模块,用于获取所述图层数据中的全部属性名;
[0027]确定模块,用于将所述全部属性名分别确定为所述属性数据表的字段名;
[0028]第一创建模块,用于基于所述表名、所述字段名和所述全部属性名各自对应的属性值,创建所述属性数据表。
[0029]根据本申请的一个实施例,所述第一创建模块包括:
[0030]第一生成子模块,用于基于所述表名和所述字段名,生成建表语句;
[0031]第二生成子模块,用于根据所述建表语句生成第一数据表;
[0032]第三生成子模块,用于基于所述属性值以及所述属性值各自对应的字段名,生成插入数据语句;
[0033]第四生成子模块,用于根据所述插入数据语句,将所述全部属性名各自对应的属性值分别插入所述第一数据表中,以创建所述属性数据表。
[0034]根据本申请的一个实施例,所述图层数据还包括图层名;所述装置还包括:
[0035]第二获取模块,用于获取所述图层数据中的图层名;
[0036]存储模块,用于将所述图层名和所述属性数据表的表名对应存储至元数据表中,以存储所述图层和所述属性数据表的对应关系。
[0037]根据本申请的一个实施例,所述第一生成模块包括:
[0038]第五生成子模块,用于响应于接收到所述图层的所述图层数据,随机生成一个唯一标识;
[0039]第六生成子模块,用于基于所述唯一标识,生成所述图层对应的待创建的所述属性数据表的表名。
[0040]根据本申请的一个实施例,所述图层有多个;所述装置还包括:
[0041]第二生成模块,用于响应于接收到多个图层各自的图层数据,分别生成所述多个图层各自对应的待创建的属性数据表的表名;
[0042]第三获取模块,用于分别获取多个图层数据中各自的全部属性名;
[0043]第二创建模块,用于针对每个图层数据,获取所述图层数据中的全部属性名,将所
述全部属性名分别确定为与所述全属性数据表的字段名,基于所述表名、所述字段名和所述全部属性名各自对应的属性值,创建所述属性数据表。
[0044]根据本申请实施例的第三方面,提供一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如第一方面中任一项所述的方法。
[0045]根据本申请实施例的第四方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现第一方面任一项所述的方法。
[0046]本申请的实施例提供的技术方案至少带来以下有益效果:
[0047]通过响应于接收到图层的图层数据,生成图层对应的待创建的属性数据表的表名;获取图层数据中的全部属性名;将全部属性名分别确定为属性数据表的字段名;基于表名、字段名和全部属性名各自对应的属性值,创建属性数据表。从而能够根据图层数据确定属性数据表的字段名,将与字段名对应的属性值存入属性数据表,进而实现自动建表,提高了建表效率以及表与属性值的适配度。
[0048]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
[0049]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理,并不构成对本申请的不当限定。
...

【技术保护点】

【技术特征摘要】
1.一种DWG解析数据高效自动入库存储的方法,其特征在于,所述方法包括:响应于接收到图层的图层数据,生成所述图层对应的待创建的属性数据表的表名;所述属性数据表用于在关系型数据库中存储所述图层数据;所述图层数据包括所述图层的属性名和所述图层的属性值;所述图层是通过对绘图DWG文件进行解析得到的;获取所述图层数据中的全部属性名;将所述全部属性名分别确定为所述属性数据表的字段名;基于所述表名、所述字段名和所述全部属性名各自对应的属性值,创建所述属性数据表。2.根据权利要求1所述的方法,其特征在于,所述基于所述表名、所述字段名和所述全部属性名各自对应的属性值,创建所述属性数据表,包括:基于所述表名和所述字段名,生成建表语句;根据所述建表语句生成第一数据表;基于所述属性值以及所述属性值各自对应的字段名,生成插入数据语句;根据所述插入数据语句,将所述全部属性名各自对应的属性值分别插入所述第一数据表中,以创建所述属性数据表。3.根据权利要求1所述的方法,其特征在于,所述图层数据还包括图层名;所述方法还包括:获取所述图层数据中的图层名;将所述图层名和所述属性数据表的表名对应存储至元数据表中,以存储所述图层和所述属性数据表的对应关系。4.根据权利要求1所述的方法,其特征在于,所述响应于接收到图层的图层数据,生成所述图层对应的待创建的属性数据表的表名,包括:响应于接收到所述图层的所述图层数据,随机生成一个唯一标识;基于所述唯一标识,生成所述图层对应的待创建的所述属性数据表的表名。5.根据权利要求1所述的方法,其特征在于,所述图层有多个;所述方法还包括:响应于接收到多个图层各自的图层数据,分别生成所述多个图层各自对应的待创建的属性数据表的表名;分别获取多个图层数据中各自的全部属性名;针对每个图层数据,获取所述图层数据中的全部属性名,将所述全部属性名分别确定为与所...

【专利技术属性】
技术研发人员:郭军杨晓宇李首滨李治壮黄坤崔宗帅刘义勤
申请(专利权)人:煤炭科学研究总院有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1