CN107688618A - 数据对比方法、装置、计算机设备和存储介质 - Google Patents
数据对比方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN107688618A CN107688618A CN201710670512.2A CN201710670512A CN107688618A CN 107688618 A CN107688618 A CN 107688618A CN 201710670512 A CN201710670512 A CN 201710670512A CN 107688618 A CN107688618 A CN 107688618A
- Authority
- CN
- China
- Prior art keywords
- file
- contrasted
- field
- name
- database
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data 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)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种数据对比方法、装置、计算机设备和存储介质。所述方法包括:获取第一数据库名和第一文件名,根据所述第一数据库名和第一文件名在第一数据库中抓取第一文件;获取第二数据库名和第二文件名,根据所述第二数据库名和第二文件名在第二数据库中抓取第二文件;获取配置信息,所述配置信息中包括第一文件中待对比的字段名以及第二文件中待对比的字段名;根据所述第一文件中待对比的字段名以及第二文件中待对比的字段名对所述第一文件和第二文件中的数据进行对比,输出对比结果。采用本方法能够直接对不同数据库中的数据进行有效对比。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种数据对比方法、装置、计算机设备和存储介质。
背景技术
在数据库开发过程中,通常需要对数据库中的数据进行对比。例如,通过数据对比来验证数据库脚本移交之后数据表的内容是否发生改动,或者数据库版本同步后,两个数据库是否同步成一致的内容等。
在传统的数据对比方式中,可以采用数据对比工具,如Compare Beyond(一款文件对比工具),对大量数据进行对比。但是这些数据对比工具进行对比的数据源有限,只能对Excel(一款办公软件)表格中的数据进行对比,而无法直接在数据库中抓取数据进行对比。因此,如何直接对不同数据库中的数据进行有效对比成为目前需要解决的一个技术问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够直接对不同数据库中的数据进行有效对比的数据对比方法、装置、计算机设备和存储介质。
一种数据对比方法,包括:
获取第一数据库名和第一文件名,根据所述第一数据库名和第一文件名在第一数据库中抓取第一文件;
获取第二数据库名和第二文件名,根据所述第二数据库名和第二文件名在第二数据库中抓取第二文件;
获取配置信息,所述配置信息中包括第一文件中待对比的字段名以及第二文件中待对比的字段名;
根据所述第一文件中待对比的字段名以及第二文件中待对比的字段名对所述第一文件和第二文件中的数据进行对比,输出对比结果。
在其中一个实施例中,所述方法还包括:
若不存在所述配置信息,则获取第一文件中待对比的字段名以及第二文件中待对比的字段名;
根据待对比的字段名分别在第一文件查询待对比的第一字段以及在第二文件中查询待对比的第二字段;
将所述第一字段和第二字段按照第一预设顺序进行排列;
将排列后的第一字段和第二字段进行对比,输出对比结果。
在其中一个实施例中,所述第一文件包括数据表,所述第二文件包括数据表,所述方法还包括:
获取第一文件对应的表结构以及第二文件对应的表结构;
对第一文件对应的表结构和第二文件对应的表结构进行对比;
输出第一文件与第二文件中不一致的字段。
在其中一个实施例中,所述第一文件包括多个包,所述第二文件包括多个包,所述方法还包括:
若所述配置信息中包括待对比包名和对应的属主,则根据待对比包名和对应的属主分别在第一数据库中和第二数据库中获取两个待对比的包,将两个待对比的包进行对比;
若所述配置信息中未包括待对比包名和对应的属主,则将第一数据库中的多个包和/或第二数据库中的多个包分别进行对比。
在其中一个实施例中,所述第一文件包括当前版本的接口参数,所述第二文件包括上一版本的接口参数,所述方法还包括:
将所述当前版本的接口参数转换为Json格式的第一接口参数;所述第一接口参数的多个参数数据按第二预设顺序排序;
将所述上一版本的接口参数转换为Json格式的第二接口参数;所述第二接口参数的多个参数数据按第二预设顺序排序;
将排序后的第一接口参数与第二接口参数进行比较,输出当前版本与上一版本不一致的参数数据。
一种数据对比装置,所述装置包括:
文件抓取模块,用于获取第一数据库名和第一文件名,根据所述第一数据库名和第一文件名在第一数据库中抓取第一文件;获取第二数据库名和第二文件名,根据所述第二数据库名和第二文件名在第二数据库中抓取第二文件;
对比模块,用于获取配置信息,所述配置信息中包括第一文件中待对比的字段名以及第二文件中待对比的字段名;根据所述第一文件中待对比的字段名以及第二文件中待对比的字段名对所述第一文件和第二文件中的数据进行对比,输出对比结果。
在其中一个实施例中,所述对比模块还用于若不存在所述配置信息,则获取第一文件中待对比的字段名以及第二文件中待对比的字段名;根据待对比的字段名分别在第一文件查询待对比的第一字段以及在第二文件中查询待对比的第二字段;将所述第一字段和第二字段按照第一预设顺序进行排列;将排列后的第一字段和第二字段进行对比,输出对比结果。
在其中一个实施例中,所述第一文件包括数据表,所述第二文件包括数据表,所述对比模块还用于获取第一文件对应的表结构以及第二文件对应的表结构;对第一文件对应的表结构和第二文件对应的表结构进行对比;输出第一文件与第二文件中不一致的字段。
一种计算机设备,包括存储器及处理器,所述存储器中储存有计算机可读指令,所述指令被所述处理器执行时,使得所述处理器执行上述方法的步骤。
一个或多个存储有计算机可读指令的计算机可读非易失性存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述所述方法的步骤。
上述数据对比方法、装置、计算机设备和存储介质,通过第一数据库名和第一文件名可以第一数据库中抓取第一文件,通过第二数据库名和第二文件可以在第二数据库中抓取第二文件。根据配置信息中第一文件中待对比的字段名以及第二文件中待对比的字段名对第一文件和第二文件中的数据进行对比,由此可以输出对比结果。由于第一文件和第二文件可以从不用的数据库中直接抓取,根据配置信息可以将第一文件和第二文件的数据进行有效对比。由此实现了直接对不同数据库中的数据进行有效对比。
附图说明
图1为一个实施例中数据对比方法的流程图;
图2为一个实施例中对比页面的示意图;
图3为一个实施例中数据对比装置的结构示意图;
图4为一个实施例中计算机设备的结构示意图;
图5为一个实施例中的应用场景图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
可以理解,本发明所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本发明的范围的情况下,可以将第一客户端称为第二客户端,且类似地,可将第二客户端称为第一客户端。第一客户端和第二客户端两者都是客户端,但其不是同一客户端。
在一个实施例中,如图1所示,提供了一种数据对比方法,以该方法应用于终端为例进行说明,具体包括以下步骤:
步骤102,获取第一数据库名和第一文件名,根据第一数据库名和第一文件名在第一数据库中抓取第一文件。
步骤104,获取第二数据库名和第二文件名,根据第二数据库名和第二文件名在第二数据库中抓取第二文件。
步骤106,获取配置信息,配置信息中包括第一文件中待对比的字段名以及第二文件中待对比的字段名。
步骤108,根据第一文件中待对比的字段名以及第二文件中待对比的字段名对第一文件和第二文件中的数据进行对比,输出对比结果。
终端上运行了数据对比应用程序。该应用程序可以对不同的数据库中的文件进行对比。数据库包括Sql Server数据库、Oracle数据库以及MySql数据库等。数据库中包括多个文件。不同的数据库可以分别部署在不同的服务器上。文件可以是数据表,也可以是包(Oracle数据库中一种文件),还可以是文本等。
终端通过该应用程序可以展示配置页面。用户可以通过终端在配置页面中输入配置信息。配置信息包括待对比的文件的基本信息,包括待对比的文件名、待对比的字段名等。其中待对比的文件可以是来自不同数据库中的文件,也可以是来自同一数据库中的文件。为了简洁描述,将待对比的两个文件可以分别称为第一文件和第二文件。将第一文件对应的数据库称为第一数据库,将第二文件对应的数据库称为第二数据库。配置信息中可以包括第一文件和第二文件的全部字段名也可以包括部分字段名。服务器可以包括第一服务器和第二服务器。其中,第一数据库部署在第一服务器上,第二数据库部署在第二服务器上。
终端通过该应用程序可以展示对比页面。对比页面中可以对不同的文件进行对比。对比页面如图2所示。用户利用终端可以在对比页面中输入第一数据库名、第一数据库连接串、第一文件名以及第二数据库名、第二数据库连接串、第二文件名等。其中,第一数据库名和第二数据库名可以相同,如果第一数据库名和第二数据库名不同,那么第一文件名和第二文件名可以相同。用户通过终端在对比页面点击第一文件名后的“查看数据”这一控件,应用程序响应该控件,根据第一数据库连接串在第一数据库中抓取第一文件。以第一数据库为Oracle数据库为例,应用程序可以运用Ado.Net(一组用于和数据源进行交互的面向对象类库),调用数据库连接对象连接到Oracle数据库,利用Ado(ActiveX数据控件)对象,包括:Oracle Command(数据库命令对象)、Oracle Data Adapter(数据适配器对象)以及Oracle Data Reader(一种数据对象,只允许以只读、顺向的方式查看其中所存储的数据)等,对第一数据库中的第一文件进行抓取。用户通过终端在对比页面点击第二文件名后的“查看数据”这一控件,应用程序响应该控件,根据第二数据库连接串在第二数据库中抓取第二文件。
终端通过应用程序抓取到第一文件和第二文件后,分别读取第一文件的数据和第二文件的数据,将读取到的数据添加在对比页面中进行展示。用户通过终端在对比页面点击“开始”这一控件,应用程序响应该控件,调用配置信息,根据配置信息中第一文件中待对比的字段名以及第二文件中待对比的字段名将对比页面中展示的第一文件的数据和第二文件的数据进行对比。如果配置信息中第一文件中待对比的字段名和第二文件中待对比的字段名是全部字段名,则终端通过应用程序对第一文件和第二文件中全部数据进行相应的对比。例如,第一文件中的第一字段与第二文件中的第一字段从第一行开始逐行对比,第一文件中的第二字段与第二文件中的第二字段从第一行开始逐行对比,以此类推,直到所有的字段完成对比。
如果配置信息中第一文件中待对比的字段名和第二文件中待对比的字段名是部分字段名,则终端通过应用程序对第一文件和第二文件中待对比的部分数据进行相应的对比。例如,第一文件中的第一字段与第二文件中的第二字段从第一行开始逐行对比,第一文件中的第二字段与第二文件中的第三字段从第一行开始逐行对比,直到所有的代对比字段完成对比。对比完成后,输出对比结果。对比结果可以包括全部数据,也可以只包括不一致的数据。为了便于用户了解对比结果,对比结果可以只显示第一文件和第二文件中不一致的数据。
进一步的,第二文件中可以包括从第一文件中的迁移的全部或部分数据。或者第一文件中包括从第二文件中的迁移的全部或部分数据。对发生数据迁移的两个文件进行对比时,配置信息中待对比的字段名可以是迁移前的字段名和迁移后的字段名。迁移前的字段名和迁移后的字段名可以相同,也可以不同。配置信息中还包括迁移规则。根据迁移规则可以查找到迁移前的字段名与对应的迁移后的字段名,以及迁移前的字段值与对应的迁移后的字段值。当大量数据从一个文件迁移至另一个文件时,通过上述方式将迁移前后的数据进行对比,可以快速有效的得知数据迁移是否准确无误。
进一步的,若第一文件的数据和第二文件的数据均较多,终端可以对第一文件和第二文件分别进行分批读取或者分页读取。将读取到的数据添加在对比页面中进行对比。进一步的,在对比过程中对比页面中还可以显示进度条,以此显示数据对比的进度,由此方便用户及时了解数据对比进度。
本实施例中,通过第一数据库名和第一文件名可以第一数据库中抓取第一文件,通过第二数据库名和第二文件可以在第二数据库中抓取第二文件。根据配置信息中第一文件中待对比的字段名以及第二文件中待对比的字段名对第一文件和第二文件中的数据进行对比,由此可以输出对比结果。由于第一文件和第二文件可以从不用的数据库中直接抓取,根据配置信息可以将第一文件和第二文件的数据进行有效对比。由此实现了直接对不同数据库中的数据进行有效对比。
在一个实施例中,该方法还包括:若不存在配置信息,则获取第一文件中待对比的字段名以及第二文件中待对比的字段名;根据待对比的字段名分别在第一文件查询待对比的第一字段以及在第二文件中查询待对比的第二字段;将第一字段和第二字段按照第一预设顺序进行排列;将排列后的第一字段和第二字段进行对比,输出对比结果。
如果用户没有在配置页面中进行配置,也可以通过对比页面输入查询语句或者导入查询文件。其中,查询语句或查询文件中可以包括待对比文件名和待对比字段名。如果只包括待对比文件名,则表示待对比文件的全部字段都需要进行对比。如果既包括待对比文件名,又包括待对比字段名,则表示待对比文件的部分字段需要进行对比。
具体的,用户利用终端可以分别在对比页面中输入第一文件对应的查询语句或者查询文件,以及第二文件对应的查询语句或者查询文件。终端通过应用程序根据查询语句或查询文件分别获取第一文件中待对比的字段名以及第二文件中待对比的字段名,根据待对比的字段名分别在第一文件查询待对比的第一字段以及和第二文件中查询待对比的第二字段。其中,待对比的第一字段包括待对比的字段名及对应的字段值,可以是一个待对比字段,也可以是多个待对比字段。
应用程序将查询到的第一字段和第二字段按照第一预设顺序进行排列,以此确保第一文件的查询结果与第二文件的查询结果顺序一致,进而能够确保数据对比的准确性。终端通过应用程序对排列后的第一字段和第二字段进行对比,输出对比结果。
本实施例中,如果没有在配置页面中输入配置信息,还可以通过输入查询语句或导入查询文件对待对比文件中的待对比字段名进行查询,得到待对比数据。由此使得数据对比的方式更灵活,方便用户选择更符合自己使用习惯的对比方式。
在一个实施例中,该方法还包括:获取第一文件对应的表结构以及第二文件对应的表结构;对第一文件对应的表结构和第二文件对应的表结构进行对比;输出第一文件与第二文件中不一致的字段。
本实施例中,第一文件可以是数据表,第二文件也可以是数据表。第一文件的表结构中包括多个字段,第二文件的表结构也包括多个字段。在根据配置信息或查询语句等对第一文件和第二文件进行对比时,还可以对第一文件和第二文件的表结构分别进行对比。
具体的,对比页面中还可以包括控件“查询表结构”。用户通过终端可以在对比页面中点击控件“查询表结构”,应用程序响应该控件可以分别查询第一文件对应的表结构以及第二文件对应的表结构。终端通过应用程序可以将第一对比文件的表结构以及第二文件的表结构进行对比,输出第一文件与第二文件中不一致的字段。
通过对第一文件和第二文件的字段和表结构分别进行对比,有助于用户全面了解不同数据库中相同文件名的两个数据表之间的不同。由此在数据库版本同步之后,可以方便用户了解不同数据库之间的表结构是否同步为一致的内容。
在一个实施例中,第一文件包括多个包,第二文件包括多个包,该方法还包括:若配置信息中包括待对比包名和对应的属主,则根据待对比包名和对应的属主分别在第一数据库中和第二数据库中获取两个待对比的包,将两个待对比的包进行对比;若配置信息中未包括待对比包名和对应的属主,则将第一数据库中的多个包和/或第二数据库中的多个包分别进行对比。
本实施例中,第一数据库和第二数据库可以均为Oracle数据库。Oracle数据库可以包括多个包。通过包可以对函数或存储过程进行分类管理。包具有包头和包体。包头中定义了一个函数和一个存储过程,包体用于实现包头中定义的函数和存储过程。
每个包具有对应的包名和属主。第一文件可以包括多个包,第二文件也可以包括多个包。如果在配置信息中输入了待对比包名和对应的属主,则终端通过应用程序可以获取到相应的两个待对比的包,将两个包进行对比。由此得到两个指定包的内容差异。从而使得数据库脚本移交之后,可以方便验证包是否发生改动。
如果配置信息中未包括待对比包名和对应的属主,则终端通过应用程序可以获取第一数据库中的多个包,以及第二数据库中的多个包,将第一数据库中的多个包与第二数据库中的多个包进行对比。其中,第一数据库中的多个包之间可以进行对比,第二数据库中的多个包之间可以进行对比,第一数据库中的多个包与第二数据库中的多个包之间还可以进行对比。由此在数据库脚本移交之后,可以方便了解不同属主之间包是否发生改动。也可以在数据库版本同步之后,方便用户了解不同数据库之间的包是否同步为一致的内容。
在一个实施例中,第一文件包括当前版本的接口参数,第二文件包括上一版本的接口参数,该方法还包括:将当前版本的接口参数转换为Json格式的第一接口参数;第一接口参数的多个参数数据按第二预设顺序排序;将上一版本的接口参数转换为Json格式的第二接口参数;第二接口参数的多个参数数据按第二预设顺序排序;将排序后的第一接口参数与第二接口参数进行比较,输出当前版本与上一版本不一致的参数数据。
本实施例中,第一文件可以记录了数据库当前版本的接口参数。第二文件可以记录了数据库上一个版本的接口参数。接口参数中包括了多个接口数据。接口数据可以采用数据表的形式进行记录,也可以采用文本的形式进行记录。由于接口参数的可读性较差,不便于直接通过该应用程序进行比对。
为了得知数据库的当前版本与上一版本之间有哪些参数数据进行了修改,终端可以通过应用程序对接口参数进行转换。具体的,终端通过应用程序获取第一文件中当前版本的接口参数,将当前版本的接口参数转换为Json格式的第一接口参数。第一接口参数包括多个参数数据,多个参数数据逐行显示,并按第二预设顺序排序。终端通过应用程序获取第二文件中上一版本的接口参数,将上一版本的接口参数转换为Json格式的第二接口参数。第二接口参数包括多个参数数据,多个参数数据逐行显示,并按第二预设顺序排序。应用程序对第一接口参数与第二接口参数逐行进行比较,输出当前版本与上一版本不一致的参数数据。由于第一接口参数与第二接口参数中的多个参数数据的排列顺序一致,因此通过对比,很容易得知两者不同的参数数据。由此方便用户了解数据库不同版本之间的接口数据中有哪些参数数据被修改。
在一个实施例中,如图3所示,提供了一种数据对比装置,包括:文件抓取模块302和对比模块304,其中:
文件抓取模块302,用于获取第一数据库名和第一文件名,根据第一数据库名和第一文件名在第一数据库中抓取第一文件;获取第二数据库名和第二文件名,根据第二数据库名和第二文件名在第二数据库中抓取第二文件。
对比模块304,用于获取配置信息,配置信息中包括第一文件中待对比的字段名,以及第二文件中待对比的字段名;根据第一文件中待对比的字段名以及第二文件中待对比的字段名对第一文件和第二文件中的数据进行对比,输出对比结果。
在一个实施例中,对比模块304还用于若不存在配置信息,则获取第一文件中待对比的字段名以及第二文件中待对比的字段名;根据待对比的字段名分别在第一文件查询待对比的第一字段以及在第二文件中查询待对比的第二字段;将第一字段和第二字段按照第一预设顺序进行排列;将排列后的第一字段和第二字段进行对比,输出对比结果。
在一个实施例中,第一文件包括数据表,第二文件包括数据表,对比模块304还用于获取第一文件对应的表结构以及第二文件对应的表结构;对第一文件对应的表结构和第二文件对应的表结构进行对比;输出第一文件与第二文件中不一致的字段。
在一个实施例中,第一文件包括多个包,第二文件包括多个包,对比模块304还用于若配置信息中包括待对比包名和对应的属主,则根据待对比包名和对应的属主分别在第一数据库中和第二数据库中获取两个待对比的包,将两个待对比的包进行对比;若配置信息中未包括待对比包名和对应的属主,则将第一数据库中的多个包和/或第二数据库中的多个包分别进行对比。
在一个实施例中,第一文件包括当前版本的接口参数,第二文件包括上一版本的接口参数,对比模块304还用于将当前版本的接口参数转换为Json格式的第一接口参数;第一接口参数的多个参数数据按第二预设顺序排序;将上一版本的接口参数转换为Json格式的第二接口参数;第二接口参数的多个参数数据按第二预设顺序排序;将排序后的第一接口参数与第二接口参数进行比较,输出当前版本与上一版本不一致的参数数据。
在一个实施例中,提供了一种计算机设备,该计算机设备包括上述实施例中提及的终端。如图4所示,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该计算机设备的非易失性存储介质存储有操作系统和和计算机可读指令,该计算机可读指令被处理器执行时以实现一种数据对比方法。该计算机设备的内存储器为非易失性存储介质中的操作系统和计算机可读指令的运行提供环境。该计算机设备的网络接口用于与外部服务器通过网络连接通信,比如,在服务器中的数据库中抓取待对比文件等。处理器执行计算机可读指令时可以执行以下步骤:获取第一数据库名和第一文件名,根据第一数据库名和第一文件名在第一数据库中抓取第一文件;获取第二数据库名和第二文件名,根据第二数据库名和第二文件名在第二数据库中抓取第二文件;获取配置信息,配置信息中包括第一文件中待对比的字段名,以及第二文件中待对比的字段名;根据第一文件中待对比的字段名以及第二文件中待对比的字段名对第一文件和第二文件中的数据进行对比,输出对比结果。
本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,如图5所示,提供了一种应用场景。其中,计算机设备502通过网络与第一服务器504连接,计算机设备504通过网络与第二服务器506连接。第一服务器504上部署了第一数据库,第二服务器506上部署了第二数据库。计算机设备504中运行了数据对比应用程序。计算机设备504通过该应用程序可以展示对比页面。比页面中包括用户输入的第一数据库名和第一文件名以及第二数据库名和第二文件名等。计算机设备504利用数据对比应用程序访问第一服务器504在第一数据库中读取第一文件的数据,以及计算机设备504利用数据对比应用程序访问第二服务器506在第二数据库中读取第二文件的数据。计算机设备504将读取到的数据添加到对比页面中进行展示。计算机设备504利用数据对比应用程序调用配置信息,根据配置信息中第一文件中待对比的字段名以及第二文件中待对比的字段名将对比页面中展示的第一文件的数据和第二文件的数据进行对比,在对比页面中输出对比结果。由此实现了直接对不同数据库中的数据进行有效对比。
在一个实施例中,处理器执行计算机可读指令时还执行以下步骤:
若不存在配置信息,则获取第一文件中待对比的字段名以及第二文件中待对比的字段名;
根据待对比的字段名分别在第一文件查询待对比的第一字段以及在第二文件中查询待对比的第二字段;
将第一字段和第二字段按照第一预设顺序进行排列;
将排列后的第一字段和第二字段进行对比,输出对比结果。
在一个实施例中,第一文件包括数据表,第二文件包括数据表,处理器执行计算机可读指令时还执行以下步骤:
获取第一文件对应的表结构以及第二文件对应的表结构;
对第一文件对应的表结构和第二文件对应的表结构进行对比;
输出第一文件与第二文件中不一致的字段。
在一个实施例中,第一文件包括多个包,第二文件包括多个包,处理器执行计算机可读指令时还执行以下步骤:
若配置信息中包括待对比包名和对应的属主,则根据待对比包名和对应的属主分别在第一数据库中和第二数据库中获取两个待对比的包,将两个待对比的包进行对比;
若配置信息中未包括待对比包名和对应的属主,则将第一数据库中的多个包和/或第二数据库中的多个包分别进行对比。
在一个实施例中,第一文件包括当前版本的接口参数,第二文件包括上一版本的接口参数,处理器执行计算机可读指令时还执行以下步骤:将当前版本的接口参数转换为Json格式的第一接口参数;第一接口参数的多个参数数据按第二预设顺序排序;
将上一版本的接口参数转换为Json格式的第二接口参数;第二接口参数的多个参数数据按第二预设顺序排序;
将排序后的第一接口参数与第二接口参数进行比较,输出当前版本与上一版本不一致的参数数据。
在一个实施例中,提供了一个或多个存储有计算机可读指令的计算机可读非易失性存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:
获取第一数据库名和第一文件名,根据第一数据库名和第一文件名在第一数据库中抓取第一文件;
获取第二数据库名和第二文件名,根据第二数据库名和第二文件名在第二数据库中抓取第二文件;
获取配置信息,配置信息中包括第一文件中待对比的字段名以及第二文件中待对比的字段名;
根据第一文件中待对比的字段名以及第二文件中待对比的字段名对第一文件和第二文件中的数据进行对比,输出对比结果。
在一个实施例中,处理器执行计算机可读指令时还执行以下步骤:
若不存在配置信息,则获取第一文件中待对比的字段名以及第二文件中待对比的字段名;
根据待对比的字段名分别在第一文件查询待对比的第一字段以及在第二文件中查询待对比的第二字段;
将第一字段和第二字段按照第一预设顺序进行排列;
将排列后的第一字段和第二字段进行对比,输出对比结果。
在一个实施例中,第一文件包括数据表,第二文件包括数据表,处理器执行计算机可读指令时还执行以下步骤:
获取第一文件对应的表结构以及第二文件对应的表结构;
对第一文件对应的表结构和第二文件对应的表结构进行对比;
输出第一文件与第二文件中不一致的字段。
在一个实施例中,第一文件包括多个包,第二文件包括多个包,处理器执行计算机可读指令时还执行以下步骤:
若配置信息中包括待对比包名和对应的属主,则根据待对比包名和对应的属主分别在第一数据库中和第二数据库中获取两个待对比的包,将两个待对比的包进行对比;
若配置信息中未包括待对比包名和对应的属主,则将第一数据库中的多个包和/或第二数据库中的多个包分别进行对比。
在一个实施例中,第一文件包括当前版本的接口参数,第二文件包括上一版本的接口参数,计算机可读指令被处理器执行时还执行以下步骤:
将当前版本的接口参数转换为Json格式的第一接口参数;第一接口参数的多个参数数据按第二预设顺序排序;
将上一版本的接口参数转换为Json格式的第二接口参数;第二接口参数的多个参数数据按第二预设顺序排序;
将排序后的第一接口参数与第二接口参数进行比较,输出当前版本与上一版本不一致的参数数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,所述的计算机可读指令可存储于一非易失性计算机可读取存储介质中,该计算机可读指令在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种数据对比方法,包括:
获取第一数据库名和第一文件名,根据所述第一数据库名和第一文件名在第一数据库中抓取第一文件;
获取第二数据库名和第二文件名,根据所述第二数据库名和第二文件名在第二数据库中抓取第二文件;
获取配置信息,所述配置信息中包括第一文件中待对比的字段名以及第二文件中待对比的字段名;
根据所述第一文件中待对比的字段名以及第二文件中待对比的字段名对所述第一文件和第二文件中的数据进行对比,输出对比结果。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若不存在所述配置信息,则获取第一文件中待对比的字段名以及第二文件中待对比的字段名;
根据待对比的字段名分别在第一文件查询待对比的第一字段以及在第二文件中查询待对比的第二字段;
将所述第一字段和第二字段按照第一预设顺序进行排列;
将排列后的第一字段和第二字段进行对比,输出对比结果。
3.根据权利要求1所述的方法,其特征在于,所述第一文件包括数据表,所述第二文件包括数据表,所述方法还包括:
获取第一文件对应的表结构以及第二文件对应的表结构;
对第一文件对应的表结构和第二文件对应的表结构进行对比;
输出第一文件与第二文件中不一致的字段。
4.根据权利要求1所述的方法,其特征在于,所述第一文件包括多个包,所述第二文件包括多个包,所述方法还包括:
若所述配置信息中包括待对比包名和对应的属主,则根据待对比包名和对应的属主分别在第一数据库中和第二数据库中获取两个待对比的包,将两个待对比的包进行对比;
若所述配置信息中未包括待对比包名和对应的属主,则将第一数据库中的多个包和/或第二数据库中的多个包分别进行对比。
5.根据权利要求1所述的方法,其特征在于,所述第一文件包括当前版本的接口参数,所述第二文件包括上一版本的接口参数,所述方法还包括:
将所述当前版本的接口参数转换为Json格式的第一接口参数;所述第一接口参数的多个参数数据按第二预设顺序排序;
将所述上一版本的接口参数转换为Json格式的第二接口参数;所述第二接口参数的多个参数数据按第二预设顺序排序;
将排序后的第一接口参数与第二接口参数进行比较,输出当前版本与上一版本不一致的参数数据。
6.一种数据对比装置,其特征在于,所述装置包括:
文件抓取模块,用于获取第一数据库名和第一文件名,根据所述第一数据库名和第一文件名在第一数据库中抓取第一文件;获取第二数据库名和第二文件名,根据所述第二数据库名和第二文件名在第二数据库中抓取第二文件;
对比模块,用于获取配置信息,所述配置信息中包括第一文件中待对比的字段名,以及第二文件中待对比的字段名;根据所述第一文件中待对比的字段名以及第二文件中待对比的字段名对所述第一文件和第二文件中的数据进行对比,输出对比结果。
7.根据权利要求6所述的装置,其特征在于,所述对比模块还用于若不存在所述配置信息,则获取第一文件中待对比的字段名以及第二文件中待对比的字段名;根据待对比的字段名分别在第一文件查询待对比的第一字段以及在第二文件中查询待对比的第二字段;将所述第一字段和第二字段按照第一预设顺序进行排列;将排列后的第一字段和第二字段进行对比,输出对比结果。
8.根据权利要求6或7所述的装置,其特征在于,所述第一文件包括数据表,所述第二文件包括数据表,所述对比模块还用于获取第一文件对应的表结构以及第二文件对应的表结构;对第一文件对应的表结构和第二文件对应的表结构进行对比;输出第一文件与第二文件中不一致的字段。
9.一种计算机设备,包括存储器及处理器,所述存储器中储存有计算机可读指令,所述指令被所述处理器执行时,使得所述处理器执行权利要求1-5中任意一项所述方法的步骤。
10.一个或多个存储有计算机可读指令的计算机可读非易失性存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行权利要求1-5中任意一项所述方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710670512.2A CN107688618B (zh) | 2017-08-08 | 2017-08-08 | 数据对比方法、装置、计算机设备和存储介质 |
PCT/CN2018/077482 WO2019029155A1 (zh) | 2017-08-08 | 2018-02-28 | 数据对比方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710670512.2A CN107688618B (zh) | 2017-08-08 | 2017-08-08 | 数据对比方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107688618A true CN107688618A (zh) | 2018-02-13 |
CN107688618B CN107688618B (zh) | 2019-03-12 |
Family
ID=61153373
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710670512.2A Active CN107688618B (zh) | 2017-08-08 | 2017-08-08 | 数据对比方法、装置、计算机设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107688618B (zh) |
WO (1) | WO2019029155A1 (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108509612A (zh) * | 2018-03-30 | 2018-09-07 | 北京润科通用技术有限公司 | 一种数据处理方法及装置 |
WO2019029155A1 (zh) * | 2017-08-08 | 2019-02-14 | 平安科技(深圳)有限公司 | 数据对比方法、装置、计算机设备和存储介质 |
CN109710571A (zh) * | 2018-12-27 | 2019-05-03 | 腾讯音乐娱乐科技(深圳)有限公司 | 一种文件解析方法、设备及存储介质 |
CN109829138A (zh) * | 2018-12-15 | 2019-05-31 | 中国平安人寿保险股份有限公司 | 文件比对方法、装置、电子设备及计算机可读存储介质 |
CN110209705A (zh) * | 2019-04-25 | 2019-09-06 | 深圳壹账通智能科技有限公司 | 数据查询方法、装置、计算机设备、计算机存储介质 |
CN110287182A (zh) * | 2019-05-05 | 2019-09-27 | 浙江吉利控股集团有限公司 | 一种大数据的数据对比方法、装置、设备及终端 |
CN110377883A (zh) * | 2019-06-04 | 2019-10-25 | 苏州神州数码捷通科技有限公司 | 基于大数据的一种深加工数据校验方法 |
CN111339039A (zh) * | 2020-02-21 | 2020-06-26 | 京东数字科技控股有限公司 | 文件的比较方法和装置、存储介质、电子装置 |
CN111399972A (zh) * | 2019-01-02 | 2020-07-10 | 中国移动通信有限公司研究院 | 一种虚拟机抓包的方法、装置及计算机可读存储介质 |
WO2021042532A1 (zh) * | 2019-09-05 | 2021-03-11 | 平安科技(深圳)有限公司 | 数据库信息分析方法、装置、计算机装置及存储介质 |
CN112905691A (zh) * | 2019-11-19 | 2021-06-04 | 中盈优创资讯科技有限公司 | 信息同步方法及装置 |
CN113760884A (zh) * | 2020-08-06 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种数据比对方法和装置 |
CN116205542A (zh) * | 2023-04-28 | 2023-06-02 | 菲特(天津)检测技术有限公司 | 一种基于数据对比的质量管理系统、方法、设备及介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11379419B2 (en) * | 2019-11-29 | 2022-07-05 | Sap Se | Autonomous intelligent data pipeline comparator |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103064968A (zh) * | 2012-12-31 | 2013-04-24 | 中国电子科技集团公司第十五研究所 | 一种基于缓存的标准化数据打包方法 |
CN103186556A (zh) * | 2011-12-28 | 2013-07-03 | 北京百度网讯科技有限公司 | 得到和搜索结构化语义知识的方法及对应装置 |
CN103942143A (zh) * | 2014-04-09 | 2014-07-23 | 烽火通信科技股份有限公司 | 一种基于版本库比较的PC-Lint代码检查结果筛选方法 |
CN103995854A (zh) * | 2014-05-13 | 2014-08-20 | 大唐移动通信设备有限公司 | 一种设备跨版本升级方法和装置 |
CN104268291A (zh) * | 2014-10-23 | 2015-01-07 | 税友软件集团股份有限公司 | 一种数据一致性处理方法和系统 |
CN106599300A (zh) * | 2016-12-28 | 2017-04-26 | 中国建设银行股份有限公司 | 一种分布式系统数据库结构对比方法和装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8473519B1 (en) * | 2008-02-25 | 2013-06-25 | Cisco Technology, Inc. | Unified communication audit tool |
CN105989089A (zh) * | 2015-02-12 | 2016-10-05 | 阿里巴巴集团控股有限公司 | 一种数据对比方法及装置 |
CN106503268B (zh) * | 2016-12-07 | 2019-08-23 | 广东神马搜索科技有限公司 | 数据对比方法、装置和系统 |
CN107688618B (zh) * | 2017-08-08 | 2019-03-12 | 平安科技(深圳)有限公司 | 数据对比方法、装置、计算机设备和存储介质 |
-
2017
- 2017-08-08 CN CN201710670512.2A patent/CN107688618B/zh active Active
-
2018
- 2018-02-28 WO PCT/CN2018/077482 patent/WO2019029155A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103186556A (zh) * | 2011-12-28 | 2013-07-03 | 北京百度网讯科技有限公司 | 得到和搜索结构化语义知识的方法及对应装置 |
CN103064968A (zh) * | 2012-12-31 | 2013-04-24 | 中国电子科技集团公司第十五研究所 | 一种基于缓存的标准化数据打包方法 |
CN103942143A (zh) * | 2014-04-09 | 2014-07-23 | 烽火通信科技股份有限公司 | 一种基于版本库比较的PC-Lint代码检查结果筛选方法 |
CN103995854A (zh) * | 2014-05-13 | 2014-08-20 | 大唐移动通信设备有限公司 | 一种设备跨版本升级方法和装置 |
CN104268291A (zh) * | 2014-10-23 | 2015-01-07 | 税友软件集团股份有限公司 | 一种数据一致性处理方法和系统 |
CN106599300A (zh) * | 2016-12-28 | 2017-04-26 | 中国建设银行股份有限公司 | 一种分布式系统数据库结构对比方法和装置 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019029155A1 (zh) * | 2017-08-08 | 2019-02-14 | 平安科技(深圳)有限公司 | 数据对比方法、装置、计算机设备和存储介质 |
CN108509612A (zh) * | 2018-03-30 | 2018-09-07 | 北京润科通用技术有限公司 | 一种数据处理方法及装置 |
CN109829138A (zh) * | 2018-12-15 | 2019-05-31 | 中国平安人寿保险股份有限公司 | 文件比对方法、装置、电子设备及计算机可读存储介质 |
CN109710571A (zh) * | 2018-12-27 | 2019-05-03 | 腾讯音乐娱乐科技(深圳)有限公司 | 一种文件解析方法、设备及存储介质 |
CN109710571B (zh) * | 2018-12-27 | 2023-06-23 | 腾讯音乐娱乐科技(深圳)有限公司 | 一种文件解析方法、设备及存储介质 |
CN111399972B (zh) * | 2019-01-02 | 2023-05-09 | 中国移动通信有限公司研究院 | 一种虚拟机抓包的方法、装置及计算机可读存储介质 |
CN111399972A (zh) * | 2019-01-02 | 2020-07-10 | 中国移动通信有限公司研究院 | 一种虚拟机抓包的方法、装置及计算机可读存储介质 |
CN110209705A (zh) * | 2019-04-25 | 2019-09-06 | 深圳壹账通智能科技有限公司 | 数据查询方法、装置、计算机设备、计算机存储介质 |
CN110287182A (zh) * | 2019-05-05 | 2019-09-27 | 浙江吉利控股集团有限公司 | 一种大数据的数据对比方法、装置、设备及终端 |
CN110377883A (zh) * | 2019-06-04 | 2019-10-25 | 苏州神州数码捷通科技有限公司 | 基于大数据的一种深加工数据校验方法 |
WO2021042532A1 (zh) * | 2019-09-05 | 2021-03-11 | 平安科技(深圳)有限公司 | 数据库信息分析方法、装置、计算机装置及存储介质 |
CN112905691A (zh) * | 2019-11-19 | 2021-06-04 | 中盈优创资讯科技有限公司 | 信息同步方法及装置 |
CN112905691B (zh) * | 2019-11-19 | 2024-05-14 | 中盈优创资讯科技有限公司 | 信息同步方法及装置 |
CN111339039A (zh) * | 2020-02-21 | 2020-06-26 | 京东数字科技控股有限公司 | 文件的比较方法和装置、存储介质、电子装置 |
CN113760884A (zh) * | 2020-08-06 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种数据比对方法和装置 |
CN116205542A (zh) * | 2023-04-28 | 2023-06-02 | 菲特(天津)检测技术有限公司 | 一种基于数据对比的质量管理系统、方法、设备及介质 |
CN116205542B (zh) * | 2023-04-28 | 2023-08-04 | 菲特(天津)检测技术有限公司 | 一种基于数据对比的质量管理系统、方法、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2019029155A1 (zh) | 2019-02-14 |
CN107688618B (zh) | 2019-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107688618A (zh) | 数据对比方法、装置、计算机设备和存储介质 | |
CN104933056B (zh) | 统一资源定位符去重方法及装置 | |
CN104486461B (zh) | 域名分类方法和装置、域名识别方法和系统 | |
CN111241389B (zh) | 一种基于矩阵的敏感词过滤方法、装置、电子设备、存储介质 | |
US20200110795A1 (en) | Facilitating auto-completion of electronic forms with hierarchical entity data models | |
CN109471795A (zh) | 分组测试方法、装置、计算机设备及存储介质 | |
CN107644286A (zh) | 工作流处理方法及装置 | |
CN107544808A (zh) | 一种网页表单的生成方法和装置 | |
CN111259627A (zh) | 文档分析方法、装置、计算机存储介质及设备 | |
CN111290956A (zh) | 基于脑图的测试方法、装置、电子设备及存储介质 | |
CN107741903A (zh) | 应用程序兼容性测试方法、装置、计算机设备和存储介质 | |
CN109359283A (zh) | 表格数据的汇总方法、终端设备及介质 | |
CN108427731A (zh) | 页面代码的处理方法、装置、终端设备及介质 | |
CN103995778B (zh) | 一种基于事件和动作的脚本文件生成方法及其装置 | |
CN109783457A (zh) | Cgi接口管理方法、装置、计算机设备和存储介质 | |
US10671631B2 (en) | Method, apparatus, and computer-readable medium for non-structured data profiling | |
CN106445815A (zh) | 一种自动化测试方法及装置 | |
CN109240936A (zh) | 应用程序的兼容性测试方法、终端设备及介质 | |
CN112948233A (zh) | 一种接口测试方法、装置、终端设备及介质 | |
CN107368500A (zh) | 数据抽取方法及系统 | |
CN106021047A (zh) | 一种对硬盘测试数据进行处理的方法及装置 | |
US20130035908A1 (en) | Identifying invariant candidates based on proofs | |
CN109800147B (zh) | 一种测试案例生成方法及终端设备 | |
CN107256274A (zh) | 网页的智能采集方法及系统 | |
CN109325167A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1250266 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |