一种大批量数据导出为Excel文件的方法和系统与流程

文档序号:14677102发布日期:2018-06-12 21:39阅读:1192来源:国知局
一种大批量数据导出为Excel文件的方法和系统与流程

本发明涉及信息技术领域,特别涉及一种大批量数据导出为Excel文件的方法和系统。



背景技术:

关系数据库是建立在关系数据库模型基础上的数据库。关系数据库产品以其简单清晰的概念、易懂易学的数据库语言,得到广泛采用。

关系数据库借助于集合代数等概念和方法来处理数据库中的数据,同时也是一个被组织成一组拥有正式描述性的表格,该形式的表格作用的实质是装载着数据项的特殊收集体,这些表格中的数据能以许多不同的方式被存取或重新召集而不需要重新组织数据库表格。关系数据库的定义造成元数据的一张表格或造成表格、列、范围和约束的正式描述。每个表格(有时被称为一个关系)包含用列表示的一个或更多的数据种类。每行包含一个唯一的数据实体,这些数据是被列定义的种类。当创造一个关系数据库的时候,你能定义数据列的可能值的范围和可能应用于那个数据值的进一步约束。

关系型数据库的主要特征主要包括:

1)、数据集中控制。在文件管理方法中,文件是分散的,每个用户或每种处理都有各自的文件,这些文件之间一般是没有联系的,因此,不能按照统一的方法来控制、维护和管理。而关系数据库则很好地克服了这一缺点,可以集中控制、维护和管理有关数据。

2)、数据独立。关系数据库中的数据独立于应用程序,包括数据的物理独立性和逻辑独立性,给数据库的使用、调整、优化和进一步扩充提供了方便,提高了关系数据库应用系统的稳定性。

3)、数据共享。关系数据库中的数据可以供多个用户使用,每个用户只与库中的一部分数据发生联系;用户数据可以重叠,用户可以同时存取数据而互不影响,大大提高了数据库的使用效率。

4)、减少数据冗余。关系数据库中的数据不是面向应用,而是面向系统。数据统一定义、组织和存储,集中管理,避免了不必要的数据冗余,也提高了数据的一致性。

5)、数据结构化。关系数据库按一定的结构形式构成,数据在记录内部和记录类型之间相互关联,用户可通过不同的路径存取数据。

6)、统一的数据保护功能。在多用户共享数据资源的情况下,对用户使用数据有严格的检查,对数据库规定密码或存取权限,拒绝非法用户进入数据库,以确保数据的安全性、一致性和并发控制。

关系数据库在运营过程中,会涉及到大批量数据的导出。导出数据需要满足数据处理的要求,文件格式需要能够方便处理,即使不具备数据库的运行环境也可以对数据进行处理,所以导出数据通常是Excel或csv格式。

现有的数据库批量数据导出是采用关系数据所自带的函数导出为Excel格式文件,或采用php编写脚本语言、将数据库数据导出为Excel或csv文件。这些导出方式能够支持的导出数据数量受到限制,导出的数据文件也存在数据错误、导出内容受到限制的问题,而且在数据导出并转换为目标文件格式的过程中等待时间长,降低了数据库数据处理的效率,不能充分发挥数据库数据转换的使用效率。



技术实现要素:

本发明提供一种大批量数据导出为Excel文件的方法和系统,优化了数据库批量导出数据的流程,提高了数据导出和转换为Excel文件格式的效率,并支持数据的大批量、一次性导出,满足数据加工和处理的多元化需求,提高了数据导出的速度,降低了数据库数据转换的时间,适应了多场景下数据库应用的需求。

本发明的技术方案提供了一种大批量数据导出为Excel文件的方法,包括以下步骤:

查询数据库;

查询结果转换为二进制数据;

将word文件转换为meta格式文件;

对所述meta格式文件进行初始化;

将所述二进制数据映射到所述meta格式文件中,生成文件流;

将所述文件流转化为Excel文件。

进一步的,所述查询结果转换为二进制数据,进一步包括:

设定数据转换的数量单位,每次转换一个所述数量单位的查询结果为二进制数据文件。

进一步的,所述二进制数据文件存储于内存中。

进一步的,所述meta格式文件包含所述数量单位的整数倍的数据行。

进一步的,所述对meta格式文件的初始化,是对所述meta格式文件的每个所述数据行添加行属性值。

进一步的,所述将所述二进制数据映射到所述meta格式文件中,进一步包括:

根据所述二进制数据的ID将所述二进制数据依次映射到meta文件的数据行中。

进一步的,使用php的生成文件函数将所述文件流转化为Excel文件。

本发明的技术方案还提供了一种大批量数据导出为Excel文件的系统,包括查询单元、二进制转换单元、meta格式转换单元、映射单元和Excel生成单元,其中,

查询单元用于查询数据库并输出查询结果;

二进制转换单元用于将所述查询结果转换为二进制数据;

meta格式转换单元用于将word文件转换为meta格式文件,并初始化所述meta格式文件;

映射单元用于将所述二进制数据映射到所述meta格式文件中,并生成文件流;

Excel生成单元用于将所述文件流转化为Excel文件。

进一步的,所述meta格式转换单元对meta格式文件的初始化,对所述meta格式文件的每个所述数据行添加行属性值。

进一步的,所述映射单元根据ID将所述二进制数据依次映射到meta文件的数据行中。

本发明技术方案优化了数据库批量导出数据的流程,提高了数据导出和转换为Excel文件格式的效率,并支持数据的大批量、一次性导出,满足数据加工和处理的多元化需求,提高了数据导出的速度,降低了数据库数据转换的时间,适应了多场景下数据库应用的需求。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:

图1为本发明实施例一中大批量数据导出为Excel文件的方法流程图;

图2为本发明实施例一中大批量数据导出为Excel文件的系统结构图。

具体实施方式

以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

图1为本发明实施例一中大批量数据导出为Excel文件的方法流程图。如图1所示,该流程包括以下步骤:

步骤101、查询数据库。

步骤102、查询结果转换为二进制数据。

设定数据转换的数量单位,每次转换一个数量单位的查询结果为二进制数据文件。

转换生成的二进制数据文件存储于内存中。

步骤103、将word文件转换为meta格式文件。

meta格式文件包含所述数量单位的整数倍的数据行。

步骤104、对所述meta格式文件进行初始化。

对meta格式文件的初始化,是对meta格式文件的每个数据行添加行属性值。

步骤105、将所述二进制数据映射到所述meta格式文件中,生成文件流。

根据二进制数据的ID将二进制数据依次映射到meta文件的数据行中。

步骤106、将所述文件流转化为Excel文件。

使用php的生成文件函数将文件流转化为Excel文件。

为了实现上述方法流程,本实施例还提供了一种大批量数据导出为Excel文件的系统,图2为本发明实施例一中大批量数据导出为Excel文件的系统结构图。如图2所示,该系统包括查询单元201、二进制转换单元202、meta格式转换单元203、映射单元204和Excel生成单元205,其中:

查询单元用于查询数据库并输出查询结果;

二进制转换单元用于将查询结果转换为二进制数据;

meta格式转换单元用于将word文件转换为meta格式文件,并初始化meta格式文件;

映射单元用于将二进制数据映射到meta格式文件中,并生成文件流;

Excel生成单元用于将文件流转化为Excel文件。

meta格式转换单元对meta格式文件的初始化,同时对meta格式文件的每个数据行添加行属性值。

映射单元根据ID将二进制数据依次映射到meta文件的数据行中。

本发明技术方案优化了数据库批量导出数据的流程,提高了数据导出和转换为Excel文件格式的效率,并支持数据的大批量、一次性导出,满足数据加工和处理的多元化需求,提高了数据导出的速度,降低了数据库数据转换的时间,适应了多场景下数据库应用的需求。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1