首页 / 专利库 / 电脑编程 / 临时别名 / 数据导入方法和装置

数据导入方法和装置

阅读:703发布:2020-05-30

专利汇可以提供数据导入方法和装置专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种数据导入方法和装置,其中,该方法包括:定义各个待导入 数据库 表的信息的词库并配置信息系统中导入数据量内存上限;根据待导入文件的文件名与词库,分析出待导入数据库表;根据待导入数据库表与词库,自动建立待导入文件的各列与待导入数据库表的各列之间的映射关系;以及根据信息系统的配置,将待导入文件中的数据导入到信息系统中。因此,通过本发明,可以显著提升数据导入过程的易用性和友好性,降低导入过程的复杂度,节省数据导入的时间,增强导入的健壮性。,下面是数据导入方法和装置专利的具体信息内容。

1.一种数据导入方法,其基于用户习惯与信息系统的配置将数据导入到所述信息系统中,其特征在于,包括以下步骤:
步骤S102,定义关于各个待导入数据库表的信息的词库并配置所述信息系统中导入数据量内存上限,所述词库用于存放关于导入的数据库表的表名和所述导入的数据库表的列名的常用别名
步骤S104,根据待导入文件的文件名与所述词库,分析出待导入数据库表;
步骤S106,根据所述待导入数据库表与所述词库,自动建立所述待导入文件的各列与所述待导入数据库表的各列之间的映射关系;
步骤S108,根据所述信息系统的配置,将所述待导入文件中的数据导入到所述信息系统中;以及
步骤S110,在所述数据被导入结束之后,所述信息系统将所述待导入文件的文件名作为当前导入的数据库表的一个别名存储到所述词库中,所述信息系统将所述待导入文件的各列与所述当前导入的数据库表的各列的对应关系以及所述当前导入的数据库表的表名记录下来以更新所述词库,并保存用户的习惯。
2.根据权利要求1所述的数据导入方法,其特征在于,在所述步骤S102中,在一存放区域中定义关于所述各个待导入数据库表的表名的别名和所述待导入数据库表的各列的别名,并且
在每次导入数据时,选择用内存或临时表来暂时存储所述待导入文件的数据。
3.根据权利要求2所述的数据导入方法,其特征在于,所述步骤S102还包括:
预置一部分系统数据;以及
用户修改或增加所述词库中的自定义数据,并且每次进行数据导入都更新所述自定义数据。
4.根据权利要求1所述的数据导入方法,其特征在于,在所述步骤S104中,计算所述待导入文件的文件名与所述词库中的所有表名的相似度,
根据所述相似度分析出所述待导入数据库表,并且
如果分析出的数据库表并不是所述待导入数据库表,则用户通过手动调整得到所述待导入数据库表。
5.根据权利要求1所述的数据导入方法,其特征在于,在所述步骤S106中,完全显示固定的所述待导入数据库表的各列,
选择所述待导入文件中的各列,以使其与所述待导入数据库表的各列相对应,并且根据所述待导入数据库表的各列与所述待导入文件的各列之间的匹配程度来对所述待导入文件中的各列进行排序,
其中,所述待导入文件的各列中与所述待导入数据库表的各列的列名匹配程度越高的列排序靠前,并且
如果所述待导入数据库表中的一列与所述待导入文件的一列之间的匹配程度高于一预定值,则默认选中所述待导入文件中的所述列。
6.根据权利要求2所述的数据导入方法,其特征在于,所述步骤S108中,根据所述系统信息配置的所述导入数据量内存上限,确定将所述待导入文件中的数据导入到所述内存中或者所述临时表中。
7.根据权利要求1所述的数据导入方法,其特征在于,还包括以下步骤:
预览所述待导入文件的数据并且对所述数据进行修改和校验;
当对所述词库进行更新时,如果一个数据库表的别名不超过一预置值,则直接加入表别名记录,否则删除最早加入的表名,以及如果所述数据库表的各列的别名不超过另一预定值,则直接入列别名记录,否则删除最早加入的列。
8.一种数据导入装置,其基于用户习惯与信息系统的配置来将数据导入到所述信息系统中,其特征在于,包括:
定义配置单元,用于定义关于各个待导入数据库表的信息的词库并配置所述信息系统中导入数据量内存上限;
分析单元,用于根据待导入文件的文件名与所述词库,分析出待导入数据库表;
对应单元,用于根据所述待导入数据库表与所述词库,自动建立所述待导入文件的各列与所述待导入数据库表的各列之间的映射关系;
导入单元,用于根据所述信息系统的配置,将所述待导入文件中的数据导入到所述信息系统中,所述词库用于存放关于导入的数据库表的表名和所述导入的数据库表的列名的常用别名;以及
词库维护单元,用于在所述数据被导入结束之后,将所述待导入文件的文件名作为当前导入的数据库表的一个别名存储到所述词库中,所述信息系统将所述待导入文件的各列与所述当前导入的数据库表的各列的对应关系以及所述当前导入的数据库表的表名记录下来以更新所述词库,并保存用户的习惯。
9.根据权利要求8所述的数据导入装置,其特征在于,在所述定义配置单元中,在一存放区域中定义所述各个待导入数据库表的表名的别名和所述待导入数据库表的各列的别名,并且在每次导入数据时,选择用内存或临时表来暂时存储所述待导入文件的数据。
10.根据权利要求9所述的数据导入装置,其特征在于,所述定义配置单元还用于预置一部分系统数据以及用户修改或增加所述词库中的自定义数据,并且每次进行数据导入都更新所述自定义数据。
11.根据权利要求8所述的数据导入装置,其特征在于,在所述分析单元中,计算所述待导入文件的文件名与所述词库中的所有表名的相似度,并根据所述相似度分析出所述待导入数据库表,并且当分析出的数据库表并不是所述待导入数据库表时,手动调整得到所述待导入数据库表。
12.根据权利要求8所述的数据导入装置,其特征在于,在所述对应单元中,完全显示固定的所述待导入数据库表的各列,选择所述待导入文件中的各列,以使其与所述待导入数据库表的各列相对应,并且根据所述待导入数据库表的各列与所述待导入文件的各列之间的匹配程度来对所述待导入文件中的各列进行排序,
其中,所述待导入文件的各列中与所述待导入数据库表的各列的列名匹配程度越高的列排序靠前,并且如果所述待导入数据库表中的一列与所述待导入文件的一列之间的匹配程度高于一预定值,则默认选中所述待导入文件中的所述列。
13.根据权利要求9所述的数据导入装置,其特征在于,所述导入单元中,根据所述系统信息配置的所述导入数据量内存上限,确定将所述待导入文件中的数据导入到所述内存中或者所述临时表中。
14.根据权利要求8所述的数据导入装置,其特征在于,还包括:
后续操作单元,用于预览所述待导入文件的数据并且对所述数据进行修改和校验;以及
当所述词库维护单元对所述词库进行更新时,如果一个数据库表的别名不超过一预置值,则直接加入表别名记录,否则删除最早加入的表名,以及如果所述数据库表的各列的别名不超过另一预定值,则直接入列别名记录,否则删除最早加入的列名。

说明书全文

数据导入方法和装置

技术领域

[0001] 本发明大体上涉及计算机信息系统领域,更具体地,涉及一种数据导入方法和装置,其基于用户习惯与配置,让用户将文件(Excel、Text等)中的业务数据方便智能地导入到信息系统中。

背景技术

[0002] 数据导入就是把存储在文件系统中的外在数据,例如Excel或Text中的业务数据,导入到信息系统中。数据导入功能已经是信息系统中必备的功能,其重要性和使用频率都比较高。
[0003] 以导入Excel文件为例,现在普遍的导入方案运行步骤是第一步选择一个Excel文件和要导入的数据库表,第二步建立Excel文件列和数据库表列的对应关系,第三步对数据进行预览和修改后导入到数据库中。
[0004] 上面所述的导入方案中存在以下几个问题:
[0005] 1)在第一步中选择数据库表时,由于可选择的数据库表可能很多,每次都要在备选表中去寻找选择。
[0006] 2)在第二步做Excel文件列和数据库表列映射关系时,必须当双方列名完全相同时才会自动匹配,其余的列都必须手动匹配。由于用户的Excel文件在一定范围内是多种多样的,向同一个数据库表中导数据的Excel文件的列名可能有稍微的差别或使用同一事物的不同名称,而且和我们系统中的名称可能不一致,所以用户每次导入时都要一列一列的手动匹配,或者修改Excel文件的列名。当列比较多的时候会很麻烦,而且用户每次导入时都要做这样额外的工作。
[0007] 3)在第三步中把Excel中的文件读入内存中后还要做很多操作比如预览数据,修改数据,做数据校验等。如果数据量比较大,几万条很多列的数据就会长时间占用内存,可能造成内存溢出或使其他程序运行受到影响。

发明内容

[0008] 鉴于上述情况,本发明提供了一种数据导入方法和装置,其基于用户习惯与信息系统的配置来将数据导入到所述信息系统中。
[0009] 根据本发明的一个方面,数据导入方法包括以下步骤:步骤S102,定义关于各个待导入数据库表的信息的词库并配置信息系统中导入数据量内存上限;步骤S104,根据待导入文件的文件名与词库,分析出待导入数据库表;步骤S106,根据待导入数据库表与词库,自动建立待导入文件的各列与待导入数据库表的各列之间的映射关系;以及步骤S108,根据信息系统的配置,将待导入文件中的数据导入到信息系统中。
[0010] 在步骤S102中,在一存放区域中定义各个待导入数据库表的表名的别名和待导入数据库表的各列的别名,并且在每次导入数据时,选择用内存或临时表来暂时存储待导入文件的数据。
[0011] 可选地,步骤S102还可以包括:在词库中预置一部分系统数据;以及用户修改或增加所述词库中的自定义数据,并且每次进行数据导入都更新所述自定义数据。
[0012] 在步骤S104中,计算待导入文件的文件名与词库中的所有表名的相似度,并且根据相似度分析出待导入数据库表。
[0013] 可选地,在步骤S104中还可以包括:如果分析出的数据库表并不是待导入数据库表,则用户通过手动调整得到待导入数据库表。
[0014] 在步骤S106中,完全显示固定的待导入数据库表的各列,选择待导入文件中的各列,以使其与待导入数据库表的各列相对应,并且根据待导入数据库表的各列与待导入文件的各列之间的匹配程度来对待导入文件中的各列进行排序,其中,待导入文件的各列中与待导入数据库表的各列的列名匹配程度越高的列排序靠前,并且如果待导入数据库表中的一列与待导入文件的一列之间的匹配程度高于一预定值,则默认选中待导入文件中的列。
[0015] 步骤S108中,根据系统信息配置的导入数据量内存上限,确定将待导入文件中的数据导入到内存中或者临时表中。
[0016] 可选地,本发明的数据导入方法还可以包括以下步骤:预览待导入文件的数据并且对数据进行修改和校验;在数据被导入结束之后,信息系统将待导入文件的文件名作为当前导入的数据库表的一个别名存储到词库中;信息系统将待导入文件的各列与数据库表的各列的对应关系记录下来以更新词库,并记录下用户的习惯;以及当对词库进行更新时,如果一个数据库表的别名不超过一预置值,则直接加入表别名记录,否则删除最早加入的表名,以及如果数据库表的各列的别名不超过另一预定值,则直接入列别名记录,否则删除最早加入的列名。
[0017] 根据本发明的另一个方面,数据导入装置包括:定义配置单元,用于定义关于各个待导入数据库表的信息的词库并配置信息系统中导入数据量内存上限;分析单元,用于根据待导入文件的文件名与词库,分析出待导入数据库表;对应单元,用于根据待导入数据库表与词库,自动建立待导入文件的各列与待导入数据库表的各列之间的映射关系;以及导入单元,用于根据信息系统的配置,将待导入文件中的数据导入到信息系统中。
[0018] 在定义配置单元中,在一存放区域中定义各个待导入数据库表的表名的别名和待导入数据库表的各列的别名,并且在每次导入数据时,选择用内存或临时表来暂时存储待导入文件的数据。
[0019] 可选地,定义配置单元还用于预置一部分系统数据以及用户修改或增加所述词库中的自定义数据,并且每次进行数据导入都更新所述自定义数据。
[0020] 在分析单元中,计算待导入文件的文件名与词库中的所有表名的相似度,并且根据相似度分析出待导入数据库表。
[0021] 可选地,分析单元还包括:手动调整单元,用于当分析出的数据库表并不是待导入数据库表时,手动调整得到待导入数据库表。
[0022] 在对应单元中,完全显示固定的待导入数据库表的各列,选择待导入文件中的各列,以使其与待导入数据库表的各列相对应,并且根据待导入数据库表的各列与待导入文件的各列之间的匹配程度来对待导入文件中的各列进行排序,其中,待导入文件的各列中与待导入数据库表的各列的列名匹配程度越高的列排序靠前,并且如果待导入数据库表中的一列与待导入文件的一列之间的匹配程度高于一预定值,则默认选中待导入文件中的该列。
[0023] 在导入单元中,根据系统信息配置的导入数据量内存上限,确定将待导入文件中的数据导入到内存中或者临时表中。
[0024] 可选地,根据本发明的数据导入装置还可以包括:后续操作单元,用于预览待导入文件的数据并且对数据进行修改和校验;词库维护单元,用于在数据被导入结束之后,将待导入文件的文件名作为当前导入的数据库表的一个表名存储到词库中,将待导入文件的各列与当前导入的数据库表的各列的对应关系以及当前导入的数据库表的别名记录下来以更新词库,并保存用户的习惯,并且当对词库进行更新时,如果一个数据库表的别名不超过一预置值,则直接加入表别名记录,否则删除最早加入的表名,而如果数据库表的各列的别名不超过另一预定值,则直接入列别名记录,否则删除最早加入的列名。
[0025] 因此,根据本发明,能够基于用户词库的导入方案,词库的内容系统预置一部分,根据客户的具体情况预置一部分,还会根据用户的习惯不断更新,并且可以根据待导入文件分析出要导入的数据库表以及分析出待导入文件的列与数据库表列的映射关系,此外,还可以根据用户设置的导入数据量内存上限动态决定是使用内存还是数据库来临时存储文件中的信息。附图说明
[0026] 图1是根据本发明的数据导入方法的流程图
[0027] 图2是根据本发明实施例的数据导入过程的流程图;
[0028] 图3是根据本发明实施例的词库组成的示意图;
[0029] 图4是根据本发明实施例的数据库表的表名别名的示例图;
[0030] 图5是根据本发明实施例的数据库表的各列列名别名的示例图;
[0031] 图6是根据本发明实施例的两个字符串具有相同字符数的示例图;
[0032] 图7是根据本发明实施例的数据库人员基本信息表的别名及其相应权重的示例图;
[0033] 图8是根据本发明实施例的待导入文件中的文件列信息的示例图;
[0034] 图9是在使用根据本发明的数据导入方法前后的出生日期下拉框中各列显示顺序的对比示例图,其中,(a)示出了未使用根据本发明的数据导入方法前的情况,以及(b)示出了使用根据本发明的数据导入方法后的情况;
[0035] 图10是根据本发明实施例的确定待导入文件的数据存放位置的方法的流程图;以及
[0036] 图11是根据本发明的数据导入装置的框图

具体实施方式

[0037] 以下将结合附图详细描述本发明的实施例。
[0038] 图1是根据本发明的数据导入方法的流程图。如图1所示,该方法包括以下步骤:
[0039] 步骤S102,定义关于各个待导入数据库表的信息的词库并配置信息系统中导入数据量内存上限;
[0040] 步骤S104,根据待导入文件的文件名与词库,分析出待导入数据库表;
[0041] 步骤S106,根据待导入数据库表与词库,自动建立待导入文件的各列与待导入数据库表的各列之间的映射关系;以及
[0042] 步骤S108,根据信息系统的配置,将待导入文件中的数据导入到信息系统中。
[0043] 在步骤S102中,在一存放区域中定义各个待导入数据库表的表名的别名和数据库表的各列的别名,并且在每次导入数据时,选择用内存或临时表来暂时存储待导入文件的数据。
[0044] 可选地,步骤S102还可以包括:在词库中预置一部分系统数据;以及用户修改或增加所述词库中的自定义数据,并且每次进行数据导入都更新所述自定义数据。
[0045] 在步骤S104中,计算待导入文件的文件名与词库中的所有表名的相似度,并且根据相似度分析出待导入数据库表。
[0046] 可选地,在步骤S104中还可以包括:如果分析出的数据库表并不是待导入数据库表,则用户通过手动调整得到待导入数据库表。
[0047] 在步骤S106中,完全显示固定的待导入数据库表的各列,选择待导入文件中的各列,以使其与待导入数据库表的各列相对应,并且根据待导入数据库表的各列与待导入文件的各列之间的匹配程度来对待导入文件中的各列进行排序,其中,待导入文件的各列中与待导入数据库表的各列的列名匹配程度越高的列排序靠前,并且如果待导入数据库表中的一列与待导入文件的一列之间的匹配程度高于一预定值,则默认选中待导入文件中的列。
[0048] 步骤S108中,根据系统信息配置的导入数据量内存上限,确定将待导入文件中的数据导入到内存中或者临时表中。
[0049] 可选地,本发明的数据导入方法还可以包括以下步骤:
[0050] 预览待导入文件的数据并且对数据进行修改和校验;
[0051] 在数据被导入结束之后,信息系统将待导入文件的文件名作为当前导入的数据库表的一个别名存储到词库中;
[0052] 信息系统将待导入文件的各列与数据库表的各列的对应关系记录下来以更新词库,并记录下用户的习惯;以及
[0053] 当对词库进行更新时,如果一个数据库表的别名不超过一预置值,则直接加入表别名记录,否则删除最早加入的表名,以及如果数据库表的各列的别名不超过另一预定值,则直接入列别名记录,否则删除最早加入的列名。
[0054] 图2是根据本发明实施例的数据导入过程的流程图。如图2所示,大体流程如下:
[0055] S202,选择要导入的文件;
[0056] S204,系统根据文件结合词库分析出要导入的数据库表;
[0057] S206,系统根据数据库表各列结合词库分析出文件各列与其对应关系;
[0058] S208,根据配置决定是把文件中的数据暂时存放在内存中还是在数据库中;以及[0059] S210,后续预览数据、修改数据、校验数据、导入等操作。
[0060] 以下将参考图2,结合图3-图10来详细描述智能数据导入过程。其中,图3是根据本发明实施例的词库组成的示意图,图4是根据本发明实施例的数据库表的表名别名的示例图,图5是根据本发明实施例的数据库表的各列列名别名的示例图,图6是根据本发明实施例的两个字符串具有相同字符数的示例图,图7是根据本发明实施例的数据库人员基本信息表的别名及其相应权重的示例图,图8是根据本发明实施例的待导入文件中的文件列信息的示例图,图9是在使用根据本发明的数据导入方法前后的出生日期下拉框中各列显示顺序的对比示例图,其中,(a)示出了未使用根据本发明的数据导入方法前的情况,以及(b)示出了使用根据本发明的数据导入方法后的情况,以及图10是根据本发明实施例的确定待导入文件的数据存放位置的方法的流程图。
[0061] 定义词库并设置导入数据量内存上限
[0062] 在进行数据导入之前要先定义词库并设置导入数据量内存上限。这里定义的词库是指存放领域内关于要导入的数据库表的表名和其列名的常用别名(近义词或相近词),词库中有系统预置和用户自定义的别名,该词库还会记录用户每次导入时的配置信息,使词库与用户的习惯保持一致(具体如图3所示)。
[0063] 词库信息示例
[0064] 图4是人员基本信息表的表名和其别名列表,图5是任职记录表中职务列和其别名及其权重。所有别名最多存储10个,如果再有新增加的别名,按照先进先出原则处理。每个列别名都有一个权重,最近最常用的权值最高,表名的别名没有权重。用数据库存储词库,每一个别名是一条数据。每条记录还存储着别名对应的原名和相应权重(例如,列别名)等信息。
[0065] 另外,导入数据量内存上限是指一次导入数据中,选择是用内存暂时存储待导入数据还是选择用数据库中临时表暂时存储待导入数据的分界线。例如,设置的内存上限为30000条,则当数据小于等于30000条的时候,将文件中的数据放在内存中进行后续操作,如果文件数据大于30000条的时候,将文件中的数据存入到临时表中进行后续操作。
[0066] 选择待导入文件,系统分析出要导入的表
[0067] 以下操作将以导入Excel文件为例。首先,要根据Excel文件找到用户想要导入的数据库表就要有一个数值去衡量Excel文件和各个数据库表的相似程度,本发明采用以文件名和数据库表名的相似度来表示。其中,两个名称的相似度即两个字符串相似度=(字符串A与字符串B的相同字符数)*2/(字符串A的字符总数+字符串B的字符总数)。两个字符串相同字符数定义为:两个字符串相同字符的个数,不必连续相同,字符可重复但每个字符只计算一次。
[0068] 如图6所示,两个字符串共有7个公共字符,相同字符不考虑字符所在位置,字符可重复但每个字符和另一个字符串的字符匹配时只能使用一次,比如A中有两个“工”,B中有三个“工”则A、B在“工”字上有两个相同的。
[0069] 另外,对于时间复杂度,假设待导入表有100张,每个表有10个别名,每个别名长度不超过10个字符。两个字符串求相似算法的时间复杂度为O(n),加上1000次别名的循环,虽然时间复杂度变为了O(n2),但是由于一个n为1000,另一个n小于10,速度还是非常快的。
[0070] 用文件名和词库中所有表名的别名求相似度。分析后找到的数据库表会在界面上自动选中,其余的表也会和原来一样列在界面上,如果分析找到的表不是用户真实要导入的表,用户还可以手动调整。
[0071] 文件列与数据库表列自动映射关系
[0072] 已知数据库表后要把其列和文件中的列对应上。数据库表中的每列的别名都在词库中存储了。而且每个别名都有对应的权重,最近最常用的权值最高。因为这步操作在界面上数据库表列是固定的并且全部显示的,然后选择文件中的列与其对应,所以要在下拉列表框中对文件中的列进行按匹配程度(字符串相似程度乘以相应权重的值即相似结果)排序,文件列名和表列别名相似结果越高的排在越上面,如果有相似结果大于2.5(50%*5)的则排在第一个的选项默认选中。
[0073] 例如,数据库人员基本信息表中一列“出生日期”,其别名及相应权重如图7所示。
[0074] 现假设待导入文件中文件列信息如图8所示,则求出文件中各列与出生日期的相似结果分别为:
[0075] 姓名0
[0076] 身份证号0
[0077] 入党日期5(“入党时间”与“出生日期”相似度50%*“出生日期”权重10相似结果为5,“入党时间”与“生日”相似度33.3%*“生日”权重9相似结果为3。所以取大值5)
[0078] 出生日8.57(“出生日”与“出生日期”相似度85.7%*“出生日期”权重10相似结果为8.57,“出生日”与“生日”、“出生年月”、“出生时间”的相似结果都小于与“出生日期”的值,所以取大值)
[0079] 入职时间3.5(“入职时间”与“出生时间”相似度50%*“出生时间”权重7相似结果为3.5)
[0080] 试用期月份1.78(“试用期月份”与“出生年月”相似度22.2%*“出生年月”权重8相似结果为1.78)
[0081] 因此,在出生日期的下拉框中,文件中各列显示的顺序为图9(b)所示,其中,出生日项自动默认选中。但性别列,由于文件中没有和其别名相似度大于2.5的列所以没有默认选中一项,但其下拉列表中依旧按照和性别列别名的相似结果排序。图9(a)和(b)是使用本发明前后的出生日期下拉框中各列显示顺序对比。
[0082] 把文件中的数据读入到系统中
[0083] 此时根据系统的配置的导入数据量内存上限来决定将文件中的数据存放到内存中还是存放到临时表中。流程如图10所示。无论使用内存还是临时表存储数据对其他操作都是透明的,后续操作并不知道也不关心数据存储在哪。如果是用临时表存储数据则在最后导入后删除临时表中的数据。
[0084] 后续操作
[0085] 预览数据、修改数据和校验数据等操作后把数据导入到数据库表中。
[0086] 保存用户习惯
[0087] 在最后导入结束后,系统把这次导入的文件名作为当前导入的数据库表的一个别名存储到词库中。系统还会把这次导入的文件各列和数据库表各列的对应关系记录下来更新词库,记录用户的习惯别名。更新词库时,对于表别名如果同一表的别名没有超过10个则直接加入一条别名记录,如果超过10个则按照先进先出原则删除最早加入的别名。对于列别名最新加入的别名权重最大为10,其他别名权重全部减1,如果超过10个别名,将优先级最低的即优先级为0的去掉。下次用户再导入类似的文件时就可以更准确地分析用户的需求。
[0088] 图11是根据本发明的数据导入装置1100的框图。如图11所示,该系统包括:定义配置单元1102,用于定义关于各个待导入数据库表的信息的词库并配置信息系统中导入数据量内存上限;分析单元1104,用于根据待导入文件的文件名与词库,分析出待导入数据库表;对应单元1106,用于根据待导入数据库表与词库,自动建立待导入文件的各列与待导入数据库表的各列之间的映射关系;以及导入单元1108,用于根据信息系统的配置,将待导入文件中的数据导入到信息系统中。
[0089] 在定义配置单元1102中,在一存放区域中定义各个待导入数据库表的表名的别名和待导入数据库表的各列的别名,并且在每次导入数据时,选择用内存或临时表来暂时存储待导入文件的数据。
[0090] 可选地,定义配置单元1102还用于预置一部分系统数据以及用户修改或增加所述词库中的自定义数据,并且每次进行数据导入都更新所述自定义数据。
[0091] 在分析单元1104中,计算待导入文件的文件名与词库中的所有表名的相似度,并且根据相似度分析出待导入数据库表。
[0092] 可选地,分析单元1104还包括:手动调整单元,用于当分析出的数据库表并不是待导入数据库表时,手动调整得到待导入数据库表。
[0093] 在对应单元1106中,完全显示固定的待导入数据库表的各列,选择待导入文件中的各列,以使其与待导入数据库表的各列相对应,并且根据待导入数据库表的各列与待导入文件的各列之间的匹配程度来对待导入文件中的各列进行排序,其中,待导入文件的各列中与待导入数据库表的各列的列名匹配程度越高的列排序靠前,并且如果待导入数据库表中的一列与待导入文件的一列之间的匹配程度高于一预定值,则默认选中待导入文件中的该列。
[0094] 在导入单元1108中,根据系统信息配置的导入数据量内存上限,确定将待导入文件中的数据导入到内存中或者临时表中。
[0095] 可选地,根据本发明的数据导入装置还可以包括:后续操作单元,用于预览待导入文件的数据并且对数据进行修改和校验;以及词库维护单元,用于在数据被导入结束之后,将待导入文件的文件名作为当前导入的数据库表的一个表名存储到词库中,并将待导入文件的各列与当前导入的数据库表的各列的对应关系以及当前导入的数据库表的别名记录下来以更新词库,并保存用户的习惯,以及当对词库进行更新时,如果一个数据库表的别名不超过一预置值,则直接加入表别名记录,否则删除最早加入的表名,而如果数据库表的各列的别名不超过另一预定值,则直接入列别名记录,否则删除最早加入的列名。
[0096] 综上所述,通过本发明,可以显著提升数据导入过程的易用性和友好性,降低导入过程的复杂度,节省数据导入的时间,增强导入的健壮性。另外,采用本发明,用户在导入过程中,选择文件后就会分析将要导入的表,然后再对文件列和数据库表列进行自动映射匹配,并按匹配程度由高到低显示候选值。通过词库记录用户习惯,实时调整,最大程度满足用户需求,并且通过设置数据导入量内存上限可有效避免内存大量占用,其他运行程序受影响或内存溢出等问题。
[0097] 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈