System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种快速的表格数据导入数据库方法、设备及介质技术_技高网

一种快速的表格数据导入数据库方法、设备及介质技术

技术编号:40213313 阅读:5 留言:0更新日期:2024-02-02 22:22
本发明专利技术公开了一种快速的表格数据导入数据库方法、设备及介质,属于数据处理技术领域,用于解决现有的大量Excel数据量在导入数据库的时候,响应时间较长,容易造成内存溢出,还会影响整个服务器的稳定运行,且处理方式过于缓慢的技术问题。方法包括:通过GS软件中引用的NPOI插件包,对表格文件进行接收解析,得到表格文件中的表格数据;根据预设的分割标准,对表格数据进行数据行的分割处理,得到若干数据块;将若干数据块进行多线程的数据转化,对应生成若干数据表;基于若干数据表,拼接出合并数据表;根据预设工具包,将合并数据表进行数据库的导入,以完成对表格数据的导入响应。

【技术实现步骤摘要】

本申请涉及数据处理领域,尤其涉及一种快速的表格数据导入数据库方法、设备及介质


技术介绍

1、随着近些年软件技术的不断发展,越来越多的公司投入到了信息化建设中,通过软件办公实现公司业务已经成为当下主流。随着业务需要通过excel数据导入数据的场景越来越常见。对于erp软件来说,大数据量excel文件的导入是不得不面对的问题,高效的处理方式既能满足用户的要求,又能满足使用者内部的期望。

2、现有的excel文件导入方式主要是利用npoi或者微软office插件实现,当excel数据量较大时导入数据库的响应时间会很长,同时还容易造成内存溢出问题,影响整个服务器的稳定运行等问题。


技术实现思路

1、本申请实施例提供了一种快速的表格数据导入数据库方法、设备及介质,用于解决如下技术问题:现有的大量excel数据量在导入数据库的时候,响应时间较长,容易造成内存溢出,还会影响整个服务器的稳定运行,且处理方式过于缓慢。

2、本申请实施例采用下述技术方案:

3、一方面,本申请实施例提供了一种快速的表格数据导入数据库方法,包括:通过gs软件中引用的npoi插件包,对表格文件进行接收解析,得到所述表格文件中的表格数据;根据预设的分割标准,对所述表格数据进行数据行的分割处理,得到若干数据块;将所述若干数据块进行多线程的数据转化,对应生成若干数据表;基于所述若干数据表,拼接出合并数据表;根据预设工具包,将所述合并数据表进行数据库的导入,以完成对所述表格数据的导入响应。p>

4、本申请实施例通过采用了多线程组装datatable,并利用odp.net将整个datatable导入数据库,提高了表格数据导入数据库的效率,降低了响应时长,同时在导入过程中内存可以及时释放没有出现内存溢出的现象,并且该方式也减轻了数据库的压力。当现有的大量excel数据量在导入数据库的时候,响应时间大大变短,减少了内存溢出,提高了整个服务器的稳定运行,加快了表格数据的处理效率。

5、在一种可行的实施方式中,通过gs软件中引用的npoi插件包,对表格文件进行接收解析,得到所述表格文件中的表格数据,具体包括:将所述npoi插件包引入到所述gs软件的代码中,以完成代码的npoi插件包依赖;基于所述npoi插件包,创建wookbook电子表格文件;通过所述wookbook电子表格文件,接收所述表格文件;并对接收到的所述表格文件进行sheet页格式化的数据解析,得到所述表格数据。

6、在一种可行的实施方式中,根据预设的分割标准,对所述表格数据进行数据行的分割处理,得到若干数据块,具体包括:通过后端数据库中的配置表,对行列数据进行分割配置,得到所述分割标准;其中,所述分割标准为所述表格数据的行列参数值;获取所述表格数据的总数据行;其中,所述总数据行不包括所述表格数据的标题栏行;根据所述分割标准,对所述总数据行进行分割处理,并将分割后的同一块数据组,归类为同一数据类;基于若干所述同一数据类,确定出处于序号排列下的所述若干数据块。

7、在一种可行的实施方式中,将所述若干数据块进行多线程的数据转化,对应生成若干数据表,具体包括:通过所述gs软件,将所述若干数据块进行多线程并行的数据处理;并将每个数据块中的表格数据进行数据转化,得到所述数据表;其中,每个所述数据块均对应一个所述数据表。

8、在一种可行的实施方式中,基于所述若干数据表,拼接出合并数据表,具体包括:根据所述若干数据表的生成时间戳,对所述若干数据表进行排序处理,得到表单序号信息;基于所述表单序号信息,将相邻序号下的所述若干数据表进行一一拼接处理,得到所述合并数据表。

9、在一种可行的实施方式中,根据预设工具包,将所述合并数据表进行数据库的导入,以完成对所述表格数据的导入响应,具体包括:将预设的odp.net工具包与所述gs软件进行导入配置;根据所述odp.net工具包中的oraclebulkcopy复制类,基于所述合并数据表,配置目标数据表;并基于配置出的所述目标数据表,开启所述数据库的数据链接;其中,所述目标数据表包括:目标表名称以及数据表行数;通过所述odp.net工具包中的writetoserver写入类,并基于所述数据链接,将所述合并数据表导入到所述数据库中;关闭所述数据库的数据链接。

10、在一种可行的实施方式中,所述oraclebulkcopy复制类用于对所述合并数据表中的相同数据源列进行导入判断;若所述合并数据表存在所述相同数据源列,则通过所述oraclebulkcopy复制类,对所述gs软件进行一次内存分配,以使所述合并数据表中的数据源导入到所述数据库中。

11、在一种可行的实施方式中,所述gs软件用于上传业务模板表格;并基于所述业务模板表格,生成所述表格文件。

12、第二方面,本申请实施例还提供了一种快速的表格数据导入数据库设备,所述设备包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有能够被所述至少一个处理器执行的指令,以使所述至少一个处理器能够执行上述任一实施方式所述的一种快速的表格数据导入数据库方法。

13、第三方面,本申请实施例还提供了一种非易失性计算机存储介质,其特征在于,所述存储介质为非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储有至少一个程序,每个所述程序包括指令,所述指令当被终端执行时,使所述终端执行上述任一实施方式所述的一种快速的表格数据导入数据库方法。

14、本申请提供了快速的表格数据导入数据库方法、设备及介质,与现有技术相比,本申请实施例具有以下有益的技术效果:

15、本申请实施例通过采用了多线程组装datatable,并利用odp.net将整个datatable导入数据库,提高了表格数据导入数据库的效率,降低了响应时长,同时在导入过程中内存可以及时释放没有出现内存溢出的现象,并且该方式也减轻了数据库的压力。当现有的大量excel数据量在导入数据库的时候,响应时间大大变短,减少了内存溢出,提高了整个服务器的稳定运行,加快了表格数据的处理效率。

本文档来自技高网...

【技术保护点】

1.一种快速的表格数据导入数据库方法,其特征在于,所述方法包括:

2.根据权利要求1所述的一种快速的表格数据导入数据库方法,其特征在于,通过GS软件中引用的NPOI插件包,对表格文件进行接收解析,得到所述表格文件中的表格数据,具体包括:

3.根据权利要求1所述的一种快速的表格数据导入数据库方法,其特征在于,根据预设的分割标准,对所述表格数据进行数据行的分割处理,得到若干数据块,具体包括:

4.根据权利要求1所述的一种快速的表格数据导入数据库方法,其特征在于,将所述若干数据块进行多线程的数据转化,对应生成若干数据表,具体包括:

5.根据权利要求1所述的一种快速的表格数据导入数据库方法,其特征在于,基于所述若干数据表,拼接出合并数据表,具体包括:

6.根据权利要求1所述的一种快速的表格数据导入数据库方法,其特征在于,根据预设工具包,将所述合并数据表进行数据库的导入,以完成对所述表格数据的导入响应,具体包括:

7.根据权利要求6所述的一种快速的表格数据导入数据库方法,其特征在于,所述OracleBulkCopy复制类用于对所述合并数据表中的相同数据源列进行导入判断;

8.根据权利要求1所述的一种快速的表格数据导入数据库方法,其特征在于,所述GS软件用于上传业务模板表格;并基于所述业务模板表格,生成所述表格文件。

9.一种快速的表格数据导入数据库设备,其特征在于,所述设备包括:

10.一种非易失性计算机存储介质,其特征在于,所述存储介质为非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储有至少一个程序,每个所述程序包括指令,所述指令当被终端执行时,使所述终端执行根据权利要求1-8任一项所述的一种快速的表格数据导入数据库方法。

...

【技术特征摘要】

1.一种快速的表格数据导入数据库方法,其特征在于,所述方法包括:

2.根据权利要求1所述的一种快速的表格数据导入数据库方法,其特征在于,通过gs软件中引用的npoi插件包,对表格文件进行接收解析,得到所述表格文件中的表格数据,具体包括:

3.根据权利要求1所述的一种快速的表格数据导入数据库方法,其特征在于,根据预设的分割标准,对所述表格数据进行数据行的分割处理,得到若干数据块,具体包括:

4.根据权利要求1所述的一种快速的表格数据导入数据库方法,其特征在于,将所述若干数据块进行多线程的数据转化,对应生成若干数据表,具体包括:

5.根据权利要求1所述的一种快速的表格数据导入数据库方法,其特征在于,基于所述若干数据表,拼接出合并数据表,具体包括:

6.根据权利要求1所述的一种快速的表格数据导入数据库方法,其特征在于...

【专利技术属性】
技术研发人员:郭锐
申请(专利权)人:浪潮通用软件有限公司
类型:发明
国别省市:

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

1