CN107247767B - 一种通过格式化数据文件导入数据库的方法及装置 - Google Patents

一种通过格式化数据文件导入数据库的方法及装置 Download PDF

Info

Publication number
CN107247767B
CN107247767B CN201710414421.2A CN201710414421A CN107247767B CN 107247767 B CN107247767 B CN 107247767B CN 201710414421 A CN201710414421 A CN 201710414421A CN 107247767 B CN107247767 B CN 107247767B
Authority
CN
China
Prior art keywords
data
configuration item
imported
determining
identification information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710414421.2A
Other languages
English (en)
Other versions
CN107247767A (zh
Inventor
康慧
王波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur General Software Co Ltd
Original Assignee
Inspur General Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur General Software Co Ltd filed Critical Inspur General Software Co Ltd
Priority to CN201710414421.2A priority Critical patent/CN107247767B/zh
Publication of CN107247767A publication Critical patent/CN107247767A/zh
Application granted granted Critical
Publication of CN107247767B publication Critical patent/CN107247767B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种通过格式化数据文件导入数据库的方法及装置,该方法包括:建立至少一个数据导入模型,其中,每一个所述数据导入模型中包括至少一个配置项;确定待导入格式化数据对应的标识信息;根据每一个所述数据导入模型中包括的至少一个配置项以及各个所述标识信息,在所述至少一个数据导入模型中确定目标数据导入模型;建立所述待导入格式化数据与所述目标数据导入模型中的各个配置项间的映射关系;根据所述映射关系将所述待导入格式化数据导入到对应的配置项中。因此,本发明提供的方案可以提高数据导入效率。

Description

一种通过格式化数据文件导入数据库的方法及装置
技术领域
本发明涉及计算机技术领域,特别涉及一种通过格式化数据文件导入数据库的方法及装置。
背景技术
随着企业信息化的深入发展,为了对业务数据进行统一管理,企业在运作过程中产生的物流数据、制造过程数据、财务数据等业务数据需要导入到ERP(EnterpriseResource Planning,企业资源计划)等企业日常运营系统对应的数据库中。
目前,业务数据导入到ERP等企业日常运营系统对应的数据库中时,通常采用业务人员手工录入的方式。但是,手工录入的方式效率低,且易出错。因此,数据导入效率较低。
发明内容
本发明提供了一种通过格式化数据文件导入数据库的方法及装置,可以提高数据导入效率。
第一方面,本发明提供了一种通过格式化数据文件导入数据库的方法,该方法包括:
在数据库中建立至少一个数据导入模型,其中,每一个所述数据导入模型中包括至少一个配置项;
建立至少一个数据导入模型,其中,每一个所述数据导入模型中包括至少一个配置项;
确定待导入格式化数据对应的标识信息;
根据每一个所述数据导入模型中包括的至少一个配置项以及各个所述标识信息,在所述至少一个数据导入模型中确定目标数据导入模型;
建立所述待导入格式化数据与所述目标数据导入模型中的各个配置项间的映射关系;
根据所述映射关系将所述待导入格式化数据导入到对应的配置项中。
优选地,
所述根据每一个所述数据导入模型中包括的至少一个配置项以及各个所述标识信息,在所述至少一个数据导入模型中确定目标数据导入模型,包括:
确定每一个所述数据导入模型中包括的每一个配置项对应的配置项字符串;
确定每一个所述标识信息对应的标识信息字符串;
将各个所述标识信息字符串分别与每一个所述数据导入模型对应的配置项字符串进行比对,确定各个所述配置项字符串均与各个所述标识信息字符串相匹配的所述数据导入模型为所述目标数据导入模型。
优选地,
所述建立所述待导入格式化数据与所述目标数据导入模型中的各个配置项间的映射关系,包括:
确定所述待导入格式数据包括的各个子数据以及各个所述子数据对应的标识信息;
确定各个所述配置项分别对应的配置项字符串;
针对每一个所述子数据均执行:确定所述子数据对应的标识信息,以及确定所述标识信息对应的标识信息字符串;在各个所述配置项字符串中,确定与所述标识信息字符串匹配的目标配置项字符串;建立所述子数据与所述目标配置项字符串对应的配置项间对应的映射关系。
优选地,
所述根据所述映射关系将所述待导入格式化数据导入到对应的配置项中,包括:
针对每一个所述子数据均执行:确定当前所述子数据的关联子数据的数量,其中,所述关联子数据为各个所述子数据中与当前所述子数据存在关联关系的子数据;
按照所述数量由大到小的顺序,对各个所述子数据进行优先级排序;
按照优先级从高到低的顺序,依次将各个所述子数据导入到所述目标数据导入模型中对应的配置项中。
优选地,
进一步包括:
检测所述待导入格式化数据是否成功导入到所述目标数据导入模型中对应的配置项中,如果未成功导入,则将所述待导入格式化数据以及未成功导入的原因写入到预先设定的导入报告中。
优选地,
所述至少一个配置项包括:数据名称、数据库字段名、数据类型、数据长度、数据内容、是否必填项目、主键列中的至少一个或多个。
优选地,
所述标识信息,包括:数据名称、数据库字段名、数据类型、数据长度、数据内容中的至少一个或多个。
第二方面,本发明提供了一种通过格式化数据文件导入数据库的装置,该装置包括:
模型建立单元,用于建立至少一个数据导入模型,其中,每一个所述数据导入模型中包括至少一个配置项;
标识确定单元,用于确定待导入格式化数据对应的标识信息;
模型确定单元,用于根据所述模型建立单元建立的每一个所述数据导入模型中包括的至少一个配置项以及所述标识确定单元确定的各个所述标识信息,在所述至少一个数据导入模型中确定目标数据导入模型;
关系建立单元,用于建立所述待导入格式化数据与所述模型确定单元确定的所述目标数据导入模型中的各个配置项间的映射关系;
导入单元,用于根据所述关系建立单元建立的所述映射关系将所述待导入格式化数据导入到对应的配置项中。
优选地,
所述模型确定单元,用于确定每一个所述数据导入模型中包括的每一个配置项对应的配置项字符串;确定每一个所述标识信息对应的标识信息字符串;将各个所述标识信息字符串分别与每一个所述数据导入模型对应的配置项字符串进行比对,确定各个所述配置项字符串均与各个所述标识信息字符串相匹配的所述数据导入模型为所述目标数据导入模型。
优选地,
所述关系建立单元,包括:确定子单元和建立子单元;
所述确定子单元,用于确定所述待导入格式数据包括的各个子数据以及各个所述子数据对应的标识信息;确定各个所述配置项分别对应的配置项字符串;
所述建立子单元,用于针对每一个所述子数据均执行:确定所述子数据对应的标识信息,以及确定所述标识信息对应的标识信息字符串;在各个所述配置项字符串中,确定与所述标识信息字符串匹配的目标配置项字符串;建立所述子数据与所述目标配置项字符串对应的配置项间对应的映射关系。
优选地,
所述导入单元,包括:排序子单元和导入子单元;
所述排序子单元,用于针对每一个所述子数据均执行:确定当前所述子数据的关联子数据的数量,其中,所述关联子数据为各个所述子数据中与当前所述子数据存在关联关系的子数据;按照所述数量由大到小的顺序,对各个所述子数据进行优先级排序;
所述导入子单元,用于按照优先级从高到低的顺序,依次将各个所述子数据导入到所述目标数据导入模型中对应的配置项中。
优选地,
进一步包括:检测单元;
所述检测单元,用于检测所述待导入格式化数据是否成功导入到所述目标数据导入模型中对应的配置项中,如果未成功导入,则将所述待导入格式化数据以及未成功导入的原因写入到预先设定的导入报告中。
本发明实施例提供了一种通过格式化数据文件导入数据库的方法及装置,根据待导入格式化数据对应的标识信息,在建立的各个包括配置项的数据导入模型中确定目标数据导入模型。然后建立待导入格式化数据与目标数据导入模型中的各个配置项间的映射关系。再根据映射关系将待导入格式化数据导入到对应的配置项中,以将待导入格式化数据导入到数据库中。通过上述过程可知,在将待导入格式化数据导入到数据库中时,可以根据待导入格式化数据对应的标识信息确定目标数据导入模型,并将待导入格式化数据导入目标数据导入模型中,即可完成待导入格式化数据的导入,而无需业务人员手动导入。因此,本发明提供的方案可以提高数据导入效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的一种通过格式化数据文件导入数据库的方法的流程图;
图2是本发明另一个实施例提供的一种通过格式化数据文件导入数据库的方法的流程图;
图3是本发明一个实施例提供的一种通过格式化数据文件导入数据库的装置所在设备的一种硬件结构图;
图4是本发明一个实施例提供的一种通过格式化数据文件导入数据库的装置的结构示意图;
图5是本发明一个实施例提供的一种包括确定子单元和建立子单元的通过格式化数据文件导入数据库的装置的结构示意图;
图6是本发明一个实施例提供的一种包括排序子单元和导入子单元的通过格式化数据文件导入数据库的装置的结构示意图;
图7是本发明一个实施例提供的一种包括检测单元的通过格式化数据文件导入数据库的装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种通过格式化数据文件导入数据库的方法,该方法可以包括以下步骤:
步骤101:建立至少一个数据导入模型,其中,每一个所述数据导入模型中包括至少一个配置项;
步骤102:确定待导入格式化数据对应的标识信息;
步骤103:根据每一个所述数据导入模型中包括的至少一个配置项以及各个所述标识信息,在所述至少一个数据导入模型中确定目标数据导入模型;
步骤104:建立所述待导入格式化数据与所述目标数据导入模型中的各个配置项间的映射关系;
步骤105:根据所述映射关系将所述待导入格式化数据导入到对应的配置项中。
根据如图1所示的实施例,根据待导入格式化数据对应的标识信息,在建立的各个包括配置项的数据导入模型中确定目标数据导入模型。然后建立待导入格式化数据与目标数据导入模型中的各个配置项间的映射关系。再根据映射关系将待导入格式化数据导入到对应的配置项中,以将待导入格式化数据导入到数据库中。通过上述过程可知,在将待导入格式化数据导入到数据库中时,可以根据待导入格式化数据对应的标识信息确定目标数据导入模型,并将待导入格式化数据导入目标数据导入模型中,即可完成待导入格式化数据的导入,而无需业务人员手动导入。因此,本发明提供的方案可以提高数据导入效率。
在本发明一个实施例中,数据导入模型的数量及型式均可以根据业务要求确定。但需要注意的是,在建立数据导入模型时,各个数据导入模型的型式需要全面,以使所有的待导入格式化数据均有对应的数据导入模型。
待导入格式化数据可以根据业务要求确定,比如可以为EXCEL格式的数据、也可以为XML格式的数据。
在本发明一个实施例中,上述图1所示流程图中所涉及的至少一个配置项包括:数据名称、数据库字段名、数据类型、数据长度、数据内容、是否必填项目、主键列中的至少一个或多个。
在本实施例中,各个数据导入模型对应的配置项的种类均可以根据业务要求确定。其中配置项可以为数据名称、数据库字段名、数据类型、数据长度、数据内容、是否必填项目、主键列只是一种优选的方式,还可以根据业务要求进行增加和修改。需要注意的是,在确定各个数据导入模型对应的配置项时,配置项的设置需要全面,以使待导入格式化数据的标识信息均具有对应的配置项。
根据上述实施例,可以根据业务要求确定配置项中包括数据名称、数据库字段名、数据类型、数据长度、数据内容、是否必填项目、主键列中的至少一个或多个。由于配置项可以根据业务要求确定,因此业务适用性较强。
在本发明一个实施例中,上述图1所示流程图中所涉及的标识信息,包括:数据名称、数据库字段名、数据类型、数据长度、数据内容中的至少一个或多个。
在本实施例中,待导入格式化数据对应的标识信息可以根据业务要求确定。标识信息包括:数据名称、数据库字段名、数据类型、数据长度、数据内容只是优选的方式,还可以根据业务要去进行增加和修改。
根据上述实施例,可以根据业务要求确定待导入格式化数据的标识信息包括数据名称、数据库字段名、数据类型、数据长度、数据内容中的至少一个或多个。由于标识信息可以根据业务要求确定,因此业务适用性较强。
在本发明一个实施例中,上述图1所示流程图中步骤103根据每一个所述数据导入模型中包括的至少一个配置项以及各个所述标识信息,在所述至少一个数据导入模型中确定目标数据导入模型,可以包括:
确定每一个所述数据导入模型中包括的每一个配置项对应的配置项字符串;
确定每一个所述标识信息对应的标识信息字符串;
将各个所述标识信息字符串分别与每一个所述数据导入模型对应的配置项字符串进行比对,确定各个所述配置项字符串均与各个所述标识信息字符串相匹配的所述数据导入模型为所述目标数据导入模型。
在本实施例中,比如存在两个数据导入模型,分别为数据导入模型1和数据导入模型2。确定数据导入模型1中包括配置项:数据名称、数据库字段名、数据类型、数据内容。确定数据导入模型2中包括配置项数据库字段名、数据类型。其中,确定数据导入模型1各个配置项对应的配置项字符串分别为名称、字段名、类型以及内容;确定数据导入模型2各个配置项对应的配置项字符串分别为字段名和类型。
在本实施例中,比如待导入格式化数据A对应的标识信息为数据名称、数据库字段名、数据类型、数据内容。确定待导入格式化数据A各个标识信息对应的标识信息字符串分别为名称、字段名、类型以及内容。则将待导入格式化数据A对应的标识信息字符串分别为名称、字段名、类型以及内容分别与数据导入模型1对应的配置项字符串以及数据导入模型2对应的配置项字符串进行比对。经过比对可以看出,数据导入模型1对应的配置项字符串与待导入格式化数据A对应的标识信息字符串相匹配,因此确定数据导入模型1为目标数据导入模型。
根据上述实施例,将待导入格式化数据对应的各个标识信息字符串分别与每一个数据导入模型对应的配置项字符串进行比对,将各个配置项字符串均与待导入格式化数据对应的各个标识信息字符串相匹配的数据导入模型为目标数据导入模型。由于将目标数据导入模型中的各个配置项字符串均与待导入格式化数据对应的各个标识信息字符串相匹配,因此确定的目标数据导入模型与待导入格式化数据的匹配度较高。
在本发明一个实施例中,上述图1所示流程图中步骤104建立所述待导入格式化数据与所述目标数据导入模型中的各个配置项间的映射关系,可以包括:
确定所述待导入格式数据包括的各个子数据以及各个所述子数据对应的标识信息;
确定各个所述配置项分别对应的配置项字符串;
针对每一个所述子数据均执行:确定所述子数据对应的标识信息,以及确定所述标识信息对应的标识信息字符串;在各个所述配置项字符串中,确定与所述标识信息字符串匹配的目标配置项字符串;建立所述子数据与所述目标配置项字符串对应的配置项间对应的映射关系。
在本实施例中,确定目标数据导入模型:数据导入模型1中各个配置项对应的配置项字符串分别为名称、字段名、类型以及内容。确定待导入格式化数据A包括子数据1、子数据2、子数据3,其中确定子数据1、子数据2、子数据3分别对应的标识信息字符串为名称、字段名、内容。
根据数据导入模型1中各个配置项对应的配置项字符串分别为名称、字段名、类型以及内容。以及子数据1、子数据2、子数据3分别对应的标识信息字符串名称、字段名、内容。确定与子数据1的标识信息字符串名称匹配的目标配置项字符串为名称,则建立子数据1与目标配置项字符串名称对应的配置项数据名称间对应的映射关系。同理,确定与子数据2的标识信息字符串字段名匹配的目标配置项字符串为字段名,则建立子数据2与目标配置项字符串名称对应的配置项数据库字段名间对应的映射关系。确定与子数据3的标识信息字符串内容匹配的目标配置项字符串为内容,则建立子数据3与目标配置项字符串名称对应的配置项数据内容间对应的映射关系。
在进行待导入格式化数据导入时,根据映射关系将子数据1导入到对应的配置项数据名称中;将子数据2导入到对应的配置项数据库字段名中;将子数据3导入到对应的配置项数据内容间中。
根据上述实施例,根据目标数据导入模型中各个配置项分别对应的配置项字符串以及各个子数据对应的标识信息字符串,在目标数据导入模型中,确定与各个子数据分别对应的配置项。并建立各个子数据与对应的配置项间对应的映射关系。因此在进行数据导入时,可以根据映射关系进行数据导入,以降低数据导入到错误位置的概率。
在本发明一个实施例中,上述图1所示流程图中步骤105根据所述映射关系将所述待导入格式化数据导入到对应的配置项中,包括:
针对每一个所述子数据均执行:确定当前所述子数据的关联子数据的数量,其中,所述关联子数据为各个所述子数据中与当前所述子数据存在关联关系的子数据;
按照所述数量由大到小的顺序,对各个所述子数据进行优先级排序;
按照优先级从高到低的顺序,依次将各个所述子数据导入到所述目标数据导入模型中对应的配置项中。
在本实施例中,当待导入格式化数据中的一个子数据关联其他子数据的数量越多时,说明该子数据在待导入格式化数据中的重要性越高。因此在进行导入操作时,需要将其先导入到目标数据导入模型中。
在本实施例中,比如待导入格式化数据中包括5个子数据,分别为子数据1、子数据2、子数据3、子数据4以及子数据5。确定子数据1与数据2、子数据3、子数据4以及子数据5均关联,则确定子数据1关联子数据的数量为4、同理确定子数据2关联子数据的数量为3。同理确定子数据3关联子数据的数量为2、确定子数据4关联子数据的数量为1、确定子数据5关联子数据的数量为0。按照数量由大到小的顺序,对各个子数据进行优先级排序为子数据1、子数据2、子数据3、子数据4、子数据5。则按照子数据1、子数据2、子数据3、子数据4、子数据5的优先级从高到低的顺序,依次将各个子数据导入到目标数据导入模型中对应的配置项中。
在本实施例中,当至少两个子数据的关联子数据的数量相同时,在排序时则可以根据业务要求确定至少两个子数据的顺序。比如子数据1和子数据2的关联子数据的数量均为2时,则排序时可以确定子数据1位于子数据2之前,也可以确定子数据1位于子数据2之后。
根据上述实施例,在根据映射关系将待导入格式化数据导入到对应的配置项中时,根据各个子数据的关联子数据的数量从大到小的顺序,对各个所述子数据进行优先级排序。并按照优先级从高到低的顺序,依次将各个子数据导入到目标数据导入模型中对应的配置项中。由于按照优先级顺序将各个子数据导入到目标数据导入模型中对应的配置项中,因此在导入时出现遗漏子数据的概率较低。
在本发明一个实施例中,通过格式化数据文件导入数据库的方法还可以进一步包括如下步骤:
检测所述待导入格式化数据是否成功导入到所述目标数据导入模型中对应的配置项中,如果未成功导入,则将所述待导入格式化数据以及未成功导入的原因写入到预先设定的导入报告中。
在本实施例中,导入报告的型式可以根据业务要求确定。比如可以是文本文件型式也可以是图表型式。
在本实施例中,检测待导入格式化数据是否成功导入到目标数据导入模型中方法可以为:达到预先设定的时间点时,检测待导入格式化数据是否完整的导入到目标数据导入模型中,如果未完整导入,则确定待导入格式化数据未成功导入。当确定未成功导入时,则将待导入格式化数据以及未成功导入的原因写入到导入报告中,以使业务人员根据导入报告及时作出处理。
根据上述实施例,当检测到待导入格式化数据未成功导入到目标数据导入模型中对应的配置项中时,则将待导入格式化数据以及未成功导入的原因写入到预先设定的导入报告中。以使业务人员可以根据导入报告中的内容及时作出处理。
下面以将待导入格式化数据:EXCEL数据A导入到ERP系统对应的数据库中为例。展开说明通过格式化数据文件导入数据库的方法,如图2所示,该通过格式化数据文件导入数据库的方法可以包括如下步骤:
步骤201:建立至少一个数据导入模型,其中,每一个数据导入模型中包括至少一个配置项。
在本步骤中,比如建立了两个数据导入模型。其中数据导入模型1中包括配置项:数据名称、数据库字段名、数据内容。数据导入模型2中包括配置项数据库字段名、数据类型。
步骤202:确定待导入格式化数据对应的标识信息。
在本步骤中,确定待导入格式化数据EXCEL数据A对应的标识信息为数据名称、数据库字段名、数据内容。
步骤203:确定每一个数据导入模型中包括的每一个配置项对应的配置项字符串。
在本步骤中,确定数据导入模型1各个配置项对应的配置项字符串分别为名称、字段名以及内容;确定数据导入模型2各个配置项对应的配置项字符串分别为字段名和类型。
步骤204:确定每一个标识信息对应的标识信息字符串。
在本步骤中,确定待导入格式化数据EXCEL数据A各个标识信息对应的标识信息字符串分别为名称、字段名以及内容。
步骤205:将各个标识信息字符串分别与每一个数据导入模型对应的配置项字符串进行比对,确定各个配置项字符串均与各个标识信息字符串相匹配的数据导入模型为目标数据导入模型。
在本步骤中,将待导入格式化数据A对应的标识信息字符串分别为名称、字段名以及内容分别与数据导入模型1对应的配置项字符串以及数据导入模型2对应的配置项字符串进行比对。经过比对可以看出,数据导入模型1对应的配置项字符串与待导入格式化数据A对应的标识信息字符串相匹配,因此确定数据导入模型1为目标数据导入模型。
步骤206:确定待导入格式数据包括的各个子数据以及各个子数据对应的标识信息。
在本步骤中,确定待导入格式化数据A包括子数据1、子数据2、子数据3,其中确定子数据1、子数据2、子数据3分别对应的标识信息字符串为名称、字段名、内容。
步骤207:确定目标数据导入模型中各个配置项分别对应的配置项字符串。
在本步骤中,确定目标数据导入模型:数据导入模型1中各个配置项分别对应的配置项字符串为名称、字段名、内容。
步骤208:依次在各个子数据中,选择一个子数据作为当前子数据。
步骤209:确定当前子数据对应的标识信息,以及确定标识信息对应的标识信息字符串。
步骤210:在目标导入模型的各个配置项字符串中,确定与标识信息字符串匹配的目标配置项字符串;建立当前子数据与目标配置项字符串对应的配置项间对应的映射关系。
在本步骤中,当子数据1为当前子数据时,确定与子数据1的标识信息字符串名称匹配的目标配置项字符串为名称,则建立子数据1与目标配置项字符串名称对应的配置项数据名称间对应的映射关系。同理,当子数据2为当前子数据时,确定与子数据2的标识信息字符串字段名匹配的目标配置项字符串为字段名,则建立子数据2与目标配置项字符串名称对应的配置项数据库字段名间对应的映射关系。当子数据3为当前子数据时,确定与子数据3的标识信息字符串内容匹配的目标配置项字符串为内容,则建立子数据3与目标配置项字符串名称对应的配置项数据内容间对应的映射关系。
步骤211:判断当前子数据是否为最后一个子数据,如果是,执行步骤212;否则,执行步骤208。
步骤212:针对每一个子数据均执行:确定当前子数据的关联子数据的数量,其中,关联子数据为各个子数据中与当前子数据存在关联关系的子数据。
在本步骤中,确定子数据1与数据2、子数据3均关联,则确定子数据1关联子数据的数量为2。同理,确定子数据2关联子数据的数量为1。确定子数据3关联子数据的数量为0。
步骤213:按照数量由大到小的顺序,对各个子数据进行优先级排序。
在本步骤中,按照数量由大到小的顺序,对各个子数据进行优先级排序为子数据1、数据2、子数据3。
步骤214:按照优先级从高到低的顺序,依次将各个子数据导入到目标数据导入模型中对应的配置项中。
在本步骤中,则按照子数据1、子数据2、子数据3的优先级从高到低的顺序,根据映射关系依次将子数据1导入到对应的配置项数据名称中;将子数据2导入到对应的配置项数据库字段名中;将子数据3导入到对应的配置项数据内容间中。
在本步骤中,可以通过如下代码完成导入操作:
使用连接函数gf_Excel_to_ds连接Excel并将Excel中数据读取到对应的DataStore中
Figure BDA0001313298850000141
Figure BDA0001313298850000151
根据业务单据的字段描述信息,与Excel文件的数据进行字段匹配
gf_sethelp("正在导入表头数据,请稍候...")
dw_Master.SetFocus()
//日期
dw_Master.SetColumn("cgqgd1_ywrq")
dw_Master.SetText(uo_sheet.dw_1.GetItemString(3,2))
//部门
dw_Master.SetColumn("cgqgd1_bmbh")
dw_Master.SetText(uo_sheet.dw_1.GetItemString(4,2))
//工程
dw_Master.SetColumn("cgqgd1_dwgc")
dw_Master.SetText(uo_sheet.dw_1.GetItemString(4,5))
//备注
dw_Master.SetColumn("cgqgd1_bz")
dw_Master.SetText(uo_sheet.dw_1.GetItemString(5,2))
//送货地点
dw_Master.SetColumn("cgqgd1_c1")
dw_Master.SetText(uo_sheet.dw_1.GetItemString(6,2))
//联系人
dw_Master.SetColumn("cgqgd1_c2")
dw_Master.SetText(uo_sheet.dw_1.GetItemString(6,5))
//电话
dw_Master.SetColumn("cgqgd1_c3")
dw_Master.SetText(uo_sheet.dw_1.GetItemString(6,7))
dw_Master.Accepttext()
步骤215:检测各个子数据是否成功导入到目标数据导入模型中对应的配置项中,如果是,结束当前流程;否则,执行步骤216。
在本步骤中,达到预先设定的时间点时,检测待导入格式化数据是否完整的导入到目标数据导入模型中,如果未完整导入,则确定待导入格式化数据未成功导入。
在本步骤中,当各个子数据成功导入到目标数据导入模型中对应的配置项中时,可以通过如下代码完成:
导入完成后返回结果并保存单据
Figure BDA0001313298850000171
步骤216:将未成功导入的子数据以及未成功导入的原因写入到预先设定的导入报告中。
在本步骤中,当确定未成功导入时,则将待导入格式化数据以及未成功导入的原因写入到导入报告中,以使业务人员根据导入报告及时作出处理。
如图3、图4所示,本发明实施例提供了一种通过格式化数据文件导入数据库的装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图3所示,为本发明实施例提供的通过格式化数据文件导入数据库的装置所在设备的一种硬件结构图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图4所示,作为一个逻辑意义上的装置,是通过其所在设备的CPU将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。本实施例提供的通过格式化数据文件导入数据库的装置,包括:
模型建立单元401,用于建立至少一个数据导入模型,其中,每一个所述数据导入模型中包括至少一个配置项;
标识确定单元402,用于确定待导入格式化数据对应的标识信息;
模型确定单元403,用于根据所述模型建立单元401建立的每一个所述数据导入模型中包括的至少一个配置项以及所述标识确定单元402确定的各个所述标识信息,在所述至少一个数据导入模型中确定目标数据导入模型;
关系建立单元404,用于建立所述待导入格式化数据与所述模型确定单元403确定的所述目标数据导入模型中的各个配置项间的映射关系;
导入单元405,用于根据所述关系建立单元404建立的所述映射关系将所述待导入格式化数据导入到对应的配置项中。
根据如图4所示的实施例,通过利用模型确定单元根据模型建立单元建立的每一个数据导入模型中包括的配置项以及标识确定单元确定的待导入格式化数据的各个标识信息,在模型建立单元建立的各个数据导入模型中确定目标数据导入模型。然后关系建立单元建立待导入格式化数据与模型确定单元确定的目标数据导入模型中的各个配置项间的映射关系。待映射关系确定之后,利用导入单元根据关系建立单元建立的映射关系将待导入格式化数据导入到对应的配置项中,以将待导入格式化数据导入到数据库中。通过上述过程可知,在将待导入格式化数据导入到数据库中时,可以根据待导入格式化数据对应的标识信息确定目标数据导入模型,并将待导入格式化数据导入目标数据导入模型中,即可完成待导入格式化数据的导入,而无需业务人员手动导入。因此,本发明提供的实施例可以提高数据导入效率。
在本发明一个实施例中,所述模型确定单元403,用于确定每一个所述数据导入模型中包括的每一个配置项对应的配置项字符串;确定每一个所述标识信息对应的标识信息字符串;将各个所述标识信息字符串分别与每一个所述数据导入模型对应的配置项字符串进行比对,确定各个所述配置项字符串均与各个所述标识信息字符串相匹配的所述数据导入模型为所述目标数据导入模型;
在本发明一个实施例中,如图5所示,所述关系建立单元404,包括:确定子单元501和建立子单元502;
所述确定子单元501,用于确定所述待导入格式数据包括的各个子数据以及各个所述子数据对应的标识信息;确定各个所述配置项分别对应的配置项字符串;
所述建立子单元502,用于针对每一个所述子数据均执行:确定所述子数据对应的标识信息,以及确定所述标识信息对应的标识信息字符串;在各个所述配置项字符串中,确定与所述标识信息字符串匹配的目标配置项字符串;建立所述子数据与所述目标配置项字符串对应的配置项间对应的映射关系。
在本发明一个实施例中,如图6所示,所述导入单元405,包括:排序子单元601和导入子单元602;
所述排序子单元601,用于针对每一个所述子数据均执行:确定当前所述子数据的关联子数据的数量,其中,所述关联子数据为各个所述子数据中与当前所述子数据存在关联关系的子数据;按照所述数量由大到小的顺序,对各个所述子数据进行优先级排序;
所述导入子单元602,用于按照优先级从高到低的顺序,依次将各个所述子数据导入到所述目标数据导入模型中对应的配置项中。
在本发明一个实施例中,如图7所示,通过格式化数据文件导入数据库的装置可以进一步包括:检测单元701;
所述检测单元701,用于检测所述待导入格式化数据是否成功导入到所述目标数据导入模型中对应的配置项中,如果未成功导入,则将所述待导入格式化数据以及未成功导入的原因写入到预先设定的导入报告中。
在本发明一个实施例提供了一种可读介质,该可读介质包括:执行指令,当存储控制器的处理器执行所述执行指令时,所述存储控制器执行上述任一项所述通过格式化数据文件导入数据库的方法。
在本发明一个实施例提供了一种存储控制器,该存储控制器包括:处理器、存储器和总线;所述存储器用于存储执行指令;所述处理器与所述存储器通过所述总线连接;当所述存储控制器运行时,所述处理器执行所述存储器存储的所述执行指令,以使所述存储控制器执行上述任一项所述通过格式化数据文件导入数据库的方法。
上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
综上所述,本发明各个实施例至少可以实现如下有益效果:
1、在本发明实施例中,根据待导入格式化数据对应的标识信息,在建立的各个包括配置项的数据导入模型中确定目标数据导入模型。然后建立待导入格式化数据与目标数据导入模型中的各个配置项间的映射关系。再根据映射关系将待导入格式化数据导入到对应的配置项中,以将待导入格式化数据导入到数据库中。通过上述过程可知,在将待导入格式化数据导入到数据库中时,可以根据待导入格式化数据对应的标识信息确定目标数据导入模型,并将待导入格式化数据导入目标数据导入模型中,即可完成待导入格式化数据的导入,而无需业务人员手动导入。因此,本发明提供的实施例可以提高数据导入效率。
2、在本发明实施例中,可以根据业务要求确定配置项中包括数据名称、数据库字段名、数据类型、数据长度、数据内容、是否必填项目、主键列中的至少一个或多个。由于配置项可以根据业务要求确定,因此业务适用性较强。
3、在本发明实施例中,可以根据业务要求确定待导入格式化数据的标识信息包括数据名称、数据库字段名、数据类型、数据长度、数据内容中的至少一个或多个。由于标识信息可以根据业务要求确定,因此业务适用性较强。
4、在本发明实施例中,将待导入格式化数据对应的各个标识信息字符串分别与每一个数据导入模型对应的配置项字符串进行比对,将各个配置项字符串均与待导入格式化数据对应的各个标识信息字符串相匹配的数据导入模型为目标数据导入模型。由于将目标数据导入模型中的各个配置项字符串均与待导入格式化数据对应的各个标识信息字符串相匹配,因此确定的目标数据导入模型与待导入格式化数据的匹配度较高。
5、在本发明实施例中,根据目标数据导入模型中各个配置项分别对应的配置项字符串以及各个子数据对应的标识信息字符串,在目标数据导入模型中,确定与各个子数据分别对应的配置项。并建立各个子数据与对应的配置项间对应的映射关系。因此在进行数据导入时,可以根据映射关系进行数据导入,以降低数据导入到错误位置的概率。
6、在本发明实施例中,在根据映射关系将待导入格式化数据导入到对应的配置项中时,根据各个子数据的关联子数据的数量从大到小的顺序,对各个所述子数据进行优先级排序。并按照优先级从高到低的顺序,依次将各个子数据导入到目标数据导入模型中对应的配置项中。由于按照优先级顺序将各个子数据导入到目标数据导入模型中对应的配置项中,因此在导入时出现遗漏子数据的概率较低。
7、在本发明实施例中,当检测到待导入格式化数据未成功导入到目标数据导入模型中对应的配置项中时,则将待导入格式化数据以及未成功导入的原因写入到预先设定的导入报告中。以使业务人员可以根据导入报告中的内容及时作出处理。
8、在本发明实施例中,通过利用模型确定单元根据模型建立单元建立的每一个数据导入模型中包括的配置项以及标识确定单元确定的待导入格式化数据的各个标识信息,在模型建立单元建立的各个数据导入模型中确定目标数据导入模型。然后关系建立单元建立待导入格式化数据与模型确定单元确定的目标数据导入模型中的各个配置项间的映射关系。待映射关系确定之后,利用导入单元根据关系建立单元建立的映射关系将待导入格式化数据导入到对应的配置项中,以将待导入格式化数据导入到数据库中。通过上述过程可知,在将待导入格式化数据导入到数据库中时,可以根据待导入格式化数据对应的标识信息确定目标数据导入模型,并将待导入格式化数据导入目标数据导入模型中,即可完成待导入格式化数据的导入,而无需业务人员手动导入。因此,本发明提供的实施例可以提高数据导入效率。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (2)

1.一种通过格式化数据文件导入数据库的方法,其特征在于,包括:
建立至少一个数据导入模型,其中,每一个所述数据导入模型中包括至少一个配置项;
确定待导入格式化数据对应的标识信息;
根据每一个所述数据导入模型中包括的至少一个配置项以及各个所述标识信息,在所述至少一个数据导入模型中确定目标数据导入模型;
建立所述待导入格式化数据与所述目标数据导入模型中的各个配置项间的映射关系;
根据所述映射关系将所述待导入格式化数据导入到对应的配置项中;
所述根据每一个所述数据导入模型中包括的至少一个配置项以及各个所述标识信息,在所述至少一个数据导入模型中确定目标数据导入模型,包括:
确定每一个所述数据导入模型中包括的每一个配置项对应的配置项字符串;
确定每一个所述标识信息对应的标识信息字符串;
将各个所述标识信息字符串分别与每一个所述数据导入模型对应的配置项字符串进行比对,确定各个所述配置项字符串均与各个所述标识信息字符串相匹配的所述数据导入模型为所述目标数据导入模型;
所述建立所述待导入格式化数据与所述目标数据导入模型中的各个配置项间的映射关系,包括:
确定所述待导入格式数据包括的各个子数据以及各个所述子数据对应的标识信息;
确定各个所述配置项分别对应的配置项字符串;
针对每一个所述子数据均执行:确定所述子数据对应的标识信息,以及确定所述标识信息对应的标识信息字符串;在各个所述配置项字符串中,确定与所述标识信息字符串匹配的目标配置项字符串;建立所述子数据与所述目标配置项字符串对应的配置项间对应的映射关系;
所述根据所述映射关系将所述待导入格式化数据导入到对应的配置项中,包括:
针对每一个所述子数据均执行:确定当前所述子数据的关联子数据的数量,其中,所述关联子数据为各个所述子数据中与当前所述子数据存在关联关系的子数据;
按照所述数量由大到小的顺序,对各个所述子数据进行优先级排序;
按照优先级从高到低的顺序,依次将各个所述子数据导入到所述目标数据导入模型中对应的配置项中;
进一步包括:
检测所述待导入格式化数据是否成功导入到所述目标数据导入模型中对应的配置项中,如果未成功导入,则将所述待导入格式化数据以及未成功导入的原因写入到预先设定的导入报告中;
所述至少一个配置项包括:数据名称、数据库字段名、数据类型、数据长度、数据内容、是否必填项目、主键列中的至少一个或多个;
和/或,
所述标识信息,包括:数据名称、数据库字段名、数据类型、数据长度、数据内容中的至少一个或多个。
2.一种通过格式化数据文件导入数据库的装置,其特征在于,包括:
模型建立单元,用于建立至少一个数据导入模型,其中,每一个所述数据导入模型中包括至少一个配置项;
标识确定单元,用于确定待导入格式化数据对应的标识信息;
模型确定单元,用于根据所述模型建立单元建立的每一个所述数据导入模型中包括的至少一个配置项以及所述标识确定单元确定的各个所述标识信息,在所述至少一个数据导入模型中确定目标数据导入模型;
关系建立单元,用于建立所述待导入格式化数据与所述模型确定单元确定的所述目标数据导入模型中的各个配置项间的映射关系;
导入单元,用于根据所述关系建立单元建立的所述映射关系将所述待导入格式化数据导入到对应的配置项中;
所述模型确定单元,用于确定每一个所述数据导入模型中包括的每一个配置项对应的配置项字符串;确定每一个所述标识信息对应的标识信息字符串;将各个所述标识信息字符串分别与每一个所述数据导入模型对应的配置项字符串进行比对,确定各个所述配置项字符串均与各个所述标识信息字符串相匹配的所述数据导入模型为所述目标数据导入模型;
和/或,
所述关系建立单元,包括:确定子单元和建立子单元;
所述确定子单元,用于确定所述待导入格式数据包括的各个子数据以及各个所述子数据对应的标识信息;确定各个所述配置项分别对应的配置项字符串;
所述建立子单元,用于针对每一个所述子数据均执行:确定所述子数据对应的标识信息,以及确定所述标识信息对应的标识信息字符串;在各个所述配置项字符串中,确定与所述标识信息字符串匹配的目标配置项字符串;建立所述子数据与所述目标配置项字符串对应的配置项间对应的映射关系;
所述导入单元,包括:排序子单元和导入子单元;
所述排序子单元,用于针对每一个所述子数据均执行:确定当前所述子数据的关联子数据的数量,其中,所述关联子数据为各个所述子数据中与当前所述子数据存在关联关系的子数据;按照所述数量由大到小的顺序,对各个所述子数据进行优先级排序;
所述导入子单元,用于按照优先级从高到低的顺序,依次将各个所述子数据导入到所述目标数据导入模型中对应的配置项中;
进一步包括:检测单元;
所述检测单元,用于检测所述待导入格式化数据是否成功导入到所述目标数据导入模型中对应的配置项中,如果未成功导入,则将所述待导入格式化数据以及未成功导入的原因写入到预先设定的导入报告中。
CN201710414421.2A 2017-06-05 2017-06-05 一种通过格式化数据文件导入数据库的方法及装置 Active CN107247767B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710414421.2A CN107247767B (zh) 2017-06-05 2017-06-05 一种通过格式化数据文件导入数据库的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710414421.2A CN107247767B (zh) 2017-06-05 2017-06-05 一种通过格式化数据文件导入数据库的方法及装置

Publications (2)

Publication Number Publication Date
CN107247767A CN107247767A (zh) 2017-10-13
CN107247767B true CN107247767B (zh) 2020-08-04

Family

ID=60017880

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710414421.2A Active CN107247767B (zh) 2017-06-05 2017-06-05 一种通过格式化数据文件导入数据库的方法及装置

Country Status (1)

Country Link
CN (1) CN107247767B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110019226A (zh) * 2017-12-22 2019-07-16 杭州海康威视数字技术股份有限公司 一种数据库文件的导入方法及装置
CN108874866A (zh) * 2018-04-22 2018-11-23 平安科技(深圳)有限公司 数据导入管理方法、装置、移动终端和存储介质
CN110362630B (zh) * 2019-07-19 2023-11-28 深圳前海微众银行股份有限公司 数据管理方法、装置、设备与计算机可读存储介质
CN113094345A (zh) * 2021-04-15 2021-07-09 浪潮通用软件有限公司 一种表格数据文件的导入方法及设备
CN113239019A (zh) * 2021-06-03 2021-08-10 锋泾(中国)建材集团有限公司 Erp系统间的数据迁移方法、系统及电子设备、介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101515291A (zh) * 2009-03-26 2009-08-26 北京泰合佳通信息技术有限公司 一种将数据批量导入数据库的方法及系统
CN105159820A (zh) * 2015-09-06 2015-12-16 浪潮(北京)电子信息产业有限公司 一种系统日志数据传输方法及装置
CN106503222A (zh) * 2016-11-04 2017-03-15 上海轻维软件有限公司 基于Excel的批量导入管理数据库的方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9892207B2 (en) * 2013-02-01 2018-02-13 Sap Se Automatic migration for on-premise data objects to on-demand data objects
CN103631966B (zh) * 2013-12-18 2017-10-10 用友网络科技股份有限公司 一种可配置的解析多值匹配字段的方法
CN103995908A (zh) * 2014-06-17 2014-08-20 山东中创软件工程股份有限公司 一种数据导入方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101515291A (zh) * 2009-03-26 2009-08-26 北京泰合佳通信息技术有限公司 一种将数据批量导入数据库的方法及系统
CN105159820A (zh) * 2015-09-06 2015-12-16 浪潮(北京)电子信息产业有限公司 一种系统日志数据传输方法及装置
CN106503222A (zh) * 2016-11-04 2017-03-15 上海轻维软件有限公司 基于Excel的批量导入管理数据库的方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
如何利用Java将Excel文件中的数据导入SQL Server;邵建强;《软件导刊》;20080331;第7卷(第3期);全文 *

Also Published As

Publication number Publication date
CN107247767A (zh) 2017-10-13

Similar Documents

Publication Publication Date Title
CN107247767B (zh) 一种通过格式化数据文件导入数据库的方法及装置
JP4758116B2 (ja) 支援付きフォーム入力
US10033600B2 (en) Client application integration for workflows
JP6614756B2 (ja) 取引システムエラー検出方法、装置、記憶媒体及びコンピュータデバイス
CN109165209B (zh) 数据库中对象类型的数据校验方法、装置、设备及介质
EP3685243A1 (en) Content pattern based automatic document classification
CN113094625B (zh) 页面元素定位方法、装置、电子设备及存储介质
WO2019095667A1 (zh) 数据库数据采集方法、应用服务器及计算机可读存储介质
CN112363814A (zh) 任务调度方法、装置、计算机设备及存储介质
CN111475700A (zh) 一种数据提取方法及相关设备
CN111367890A (zh) 一种数据迁移的方法、装置、计算机设备及可读存储介质
CN111783460A (zh) 一种企业简称提取方法、装置、计算机设备及存储介质
CN109918385A (zh) 三方对账方法、电子装置及可读存储介质
US9401846B2 (en) Information handling system configuration identification tool and method
CN110765069A (zh) 一种数据迁移方法、装置及系统
WO2019041529A1 (zh) 新闻主体企业识别方法、电子设备及计算机可读存储介质
CN116562255A (zh) 表单信息生成方法、装置、电子设备和计算机可读介质
CN115437571A (zh) 数据写入方法、装置、计算机设备和存储介质
CN114186976A (zh) 工作流程流转方法、装置、计算机设备及存储介质
CN115328764A (zh) 基于自动化测试的测试代码优化方法及其相关设备
CN113672512A (zh) 代码检查规则生成方法、代码检查方法、装置、介质
CN114637672A (zh) 自动化数据测试方法、装置、计算机设备及存储介质
CN111061699B (zh) 一种电能表数据库版本更新的方法及装置
CN116107971A (zh) 模型的数据处理方法、装置、电子设备以及存储介质
CN114143308A (zh) 文件上传信息处理方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200708

Address after: 250100 Ji'nan high tech Zone, Shandong, No. 1036 wave road

Applicant after: INSPUR GENERAL SOFTWARE Co.,Ltd.

Address before: 250100, No. 2877, fairway, Sun Town, Ji'nan hi tech Zone, Shandong

Applicant before: SHANDONG INSPUR GENESOFT INFORMATION TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant