一种实现Excel数据向数据库导入的方法技术

技术编号:25479421 阅读:35 留言:0更新日期:2020-09-01 23:00
本发明专利技术公开了一种实现

【技术实现步骤摘要】
一种实现Excel数据向数据库导入的方法
本专利技术涉及计算机
,具体来说,涉及一种实现Excel数据向数据库导入的方法。
技术介绍
MicrosoftExcel是Microsoft为使用Windows和AppleMacintosh操作系统的电脑编写的一款电子表格软件,为最流行的个人计算机数据处理软件。现存在多种将Excel中数据导入到数据库的方法,但这些方法适用范围有限,对于不同类型的Excel文件(.xls或.xlxs)、不同形状的Excel表格(横表或纵表等),同时面对数据库不同数据格式要求,要使用不同的方法。现有技术中,采用人工手动导入数据和时间成本高及人工录入错误的可能性常常出现,功能不够完善,使用不方便,经济价值低。
技术实现思路
针对相关技术中的上述技术问题,本专利技术提出一种实现Excel数据向数据库导入的方法,能够克服现有技术的上述不足。为实现上述技术目的,本专利技术的技术方案是这样实现的:一种实现Excel数据向数据库导入的方法,该方法包括以下步骤:S1:识别上传的Excel文件,其中,文件的格式为.xls或.xlsx;S2:通过表索引,获取表的配置信息;S3:从表配置信息中获得sheet配置信息,其中,sheet为Excel文件中的工作表,sheet配置信息为多个的配置信息,表配置和sheet配置是一对多的关系;S4:判断sheet配置表的类型,读取数据,对数据进行匹配、校验、计算以及向数据库具体字段映射,其中,表的类型包括横向表、纵向表;S5:根据数据库中配置的表名和字段名,将所述步骤S4中获取的List数据集合导入到数据库表中。进一步的,每一个表作为一次数据导入的最小单元。进一步的,所述步骤S2中,获得sheet配置信息前必须判断表配置信息。进一步的,所述步骤S3中,当无法从Excel中获取到对应名称的sheet配置信息、导入sheet配置信息时,会进行相应错误提示。进一步的,所述步骤S4中,读取的数据为sheet配置中的实际数据。进一步的,所述步骤S4中,当为横向表时,包括以下步骤:S41:从数据起始行开始读取sheet配置表中实际数据,其中,每一行数据对应多个字段,起始行为非表头起始行;S42:把读取的数据存储为List数据集合,其中,List数据集合中第一个HashMap元素包含数据起始行的数据,第二个元素包含数据起始行下一行的数据,以此类推。进一步的,所述步骤S41中,实际数据包括校验单元格的值、同时设置操作数据。本专利技术的有益效果:通过该方法,扩大了使用范围且还同时完成了数值校验以及数值计算等;实时根据前端需求将各种Excel数据导入数据库,解决了通过人工手动导入数据的人力资源和时间成本的损耗及降低了人工录入错误的可能性,完善了功能,便捷了使用,提高了经济价值。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是根据本专利技术实施例所述的一种实现Excel数据向数据库导入的方法的流程框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本专利技术保护的范围。如图1所示,根据本专利技术实施例所述的一种实现Excel数据向数据库导入的方法,包括以下步骤:S1:识别上传的Excel文件,其中,文件的格式为.xls或.xlsx;S2:通过表索引,获取表的配置信息;S3:从表配置信息中获得sheet配置信息,其中,sheet为Excel文件中的工作表,sheet配置信息为多个的配置信息,表配置和sheet配置是一对多的关系;S4:判断sheet配置表的类型,读取数据,对数据进行匹配、校验、计算以及向数据库具体字段映射,其中,表的类型包括横向表、纵向表;S5:根据数据库中配置的表名和字段名,将所述步骤S4中获取的List数据集合导入到数据库表中。在本专利技术的一个具体实施例中,每一个表作为一次数据导入的最小单元。在本专利技术的一个具体实施例中,所述步骤S2中,获得sheet配置信息前必须判断表配置信息。在本专利技术的一个具体实施例中,所述步骤S3中,当无法从Excel中获取到对应名称的sheet配置信息、导入sheet配置信息时,会进行相应错误提示。在本专利技术的一个具体实施例中,所述步骤S4中,读取的数据为sheet配置中的实际数据。步骤S4中,当为横向表时,包括以下步骤:S41:从数据起始行开始读取sheet配置表中实际数据,其中,每一行数据对应多个字段,起始行为非表头起始行;S42:把读取的数据存储为List数据集合,其中,List数据集合中第一个HashMap元素包含数据起始行的数据,第二个元素包含数据起始行下一行的数据,以此类推。在本专利技术的一个具体实施例中,所述步骤S41中,实际数据包括校验单元格的值、同时设置操作数据。为了方便理解本专利技术的上述技术方案,以下对本专利技术的上述技术方案进行详细说明。在一个具体实施例中,在具体使用时,根据本专利技术所述的一种实现Excel数据向数据库导入的方法,包括以下流程:1.识别上传的Excel文件为.xls或.xlsx。2.通过表索引获取表的配置信息,在表中每一个表作为一次数据导入的最小单元,将Excel中的报表数据导入数据库中的具体某一张表中;表的名称(name字段)、表索引(key字段)、表所属模块(module_key字段)、以及表的导入数据对应数据库中的表名(table_name字段)的配置均在表配置信息中;此外还应配置sort字段用于页面排序,若期望某张表在顶端显示,则sort字段应置为0,显示顺序为从小到大依次从上到下排列。3.判断表配置信息是否为null,若不是则可得sheet配置信息(可能是多个,因为一张表可通过多张sheet导入)。3.1表用于进行Excel文件中sheet的配置,由于单次数据导入可能需要从一个Excel文件的多个sheet中获取数据,所以表和sheet是一对多的关系,两者通过table_key字段(对应表的key字段)关联;name字段配置sheet文件的名称,若无法从Excel中获取到对应名称的sheet,则导入时会进行相应错误提示。3.2此表中可配置sheet的读取方向(orient字段,若sheet是横向表则该字段为0,若是纵向表则该字段为1);由于Excel中表头可能不是从第一行及第一列开始读取,所以需要配置start_r本文档来自技高网...

【技术保护点】
1.一种实现

【技术特征摘要】
1.一种实现Excel数据向数据库导入的方法,其特征在于,包括以下步骤:
S1:识别上传的Excel文件,其中,文件的格式为.xls或.xlsx;
S2:通过表索引,获取表的配置信息;
S3:从表配置信息中获得sheet配置信息,其中,sheet为Excel文件中的工作表,sheet配置信息为多个的配置信息,表配置和sheet配置是一对多的关系;
S4:判断sheet配置表的类型,读取数据,对数据进行匹配、校验、计算以及向数据库具体字段映射,其中,表的类型包括横向表、纵向表;
S5:根据数据库中配置的表名和字段名,将所述步骤S4中获取的List数据集合导入到数据库表中。


2.根据权利要求1所述的一种实现Excel数据向数据库导入的方法,其特征在于,每一个表作为一次数据导入的最小单元。


3.根据权利要求1所述的一种实现Excel数据向数据库导入的方法,其特征在于,所述步骤S2中,获得sheet配置信息前必须判断表配置信息。


4.根据权...

【专利技术属性】
技术研发人员:黄非高淑敏罗洪涛谢水庚姜桥魏伟
申请(专利权)人:北京航天云路有限公司
类型:发明
国别省市:北京;11

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

1