[发明专利]多类型数据库表结构对比方法、系统、设备及存储介质在审
| 申请号: | 202110992035.8 | 申请日: | 2021-08-27 |
| 公开(公告)号: | CN113672639A | 公开(公告)日: | 2021-11-19 |
| 发明(设计)人: | 黄富贵 | 申请(专利权)人: | 成都长城开发科技有限公司 |
| 主分类号: | G06F16/242 | 分类号: | G06F16/242;G06F16/28 |
| 代理公司: | 成都九鼎天元知识产权代理有限公司 51214 | 代理人: | 徐静 |
| 地址: | 611731 四川省成*** | 国省代码: | 四川;51 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 类型 数据库 结构 对比 方法 系统 设备 存储 介质 | ||
本发明公开了一种多类型数据库表结构对比方法、系统、设备及存储介质,其中对比方法包括如下步骤:定义数据库表结构属性SQL查询执行类,设置查询该数据库表结构属性的可执行SQL语句;提取源数据库和目标数据库的公共表结构属性;对两种数据库的公共表结构属性依据各自对应的可执行SQL语句进行查询,得到结果集,并转换为同类型的数据对象;将转换后的数据对象按照新增、修改和删除三个方面进行对比;将对比有差异性的表结构属性按照目标数据库的表结构属性进行相应的转换;定义数据库表结构属性的SQL生成类,按照目标数据库表结构属性的DDL语法生成可执行SQL。本发明解决了不同数据库之间表结构难以对比的问题。
技术领域
本发明涉及电数字数据处理技术领域,尤其涉及一种多类型数据库表结构对比方法、系统、设备及存储介质。
背景技术
如今,数据库种类越来越多,同一家企业可能同时使用着多种数据库,对应的就需要对这些数据库的表结构进行对比,使其保持相同的表结构。当前,对同一种数据库表结构进行对比是很容易的,但如何对不同种类的数据库之间,其所拥有的表结构属性是不同的,且对应的DDL语法也是不同的,将两者同步成相同的表结构,成为企业所面对的一个问题。
发明专利CN201710149902.5公开了一种数据库表结构的同步方法、装置、电子设备和存储介质,能够根据获取的数据库表结构信息自动生成差异比对结果、并自动生成sql语句。该方法包括:获取源数据库与目标数据库的表结构信息;根据所述表结构信息对源数据库、目标数据库自动进行差异比对,生成差异比对结果;根据所述差异比对结果自动生成sql语句。该方法使用在不同数据库的对比中,由于其语法,数据类型的不同,在对比时可能产生很多人为认为两者相同但由于语法、数据类型等原因而导致差异的结果,并且自动生成的sql由于语法等原因可能无法在目标数据库中执行。
发明内容
为了解决上述问题,本发明提出一种多类型数据库表结构对比方法、系统、设备及存储介质,解决的技术问题是不同种类的数据库之间的表结构对比方法,本发明能够根据对比结果按照目标数据库的DDL语法生成其所能执行的SQL。当引入新的一种数据库时,仅需要定义该数据库表结构属性SQL查询执行类以及SQL生成类,若两种数据库之间存在语法不同但其含义相同的数据项时,通过配置转换关系或者用户自定义转换关系进行处理。
为实现上述功能,本发明采用以下技术方案:
一种多类型数据库表结构对比方法,包括如下步骤:
步骤1:定义数据库表结构属性SQL查询执行类,设置查询该数据库表结构属性的可执行SQL语句;
步骤2:提取源数据库和目标数据库的公共表结构属性;
步骤3:对两种数据库的公共表结构属性依据各自对应的可执行SQL语句进行查询,得到结果集,并转换为同类型的数据对象;
步骤4:将转换后的数据对象按照新增、修改和删除三个方面进行对比,记录对比后的结果;
步骤5:定义源数据库和目标数据库的表结构属性转换类,将对比有差异性的表结构属性按照目标数据库的表结构属性进行相应的转换;
步骤6:定义数据库表结构属性的SQL生成类,按照目标数据库表结构属性的DDL语法生成可执行SQL。
进一步地,在所述步骤2中,根据两种数据库所支持的表结构属性,提取出两者所具有的共有属性,仅对共有属性进行查询和对比,所述表结构属性包括表、约束、索引和序列。
进一步地,在所述步骤4包括以下子步骤:
步骤401:对比表的数据对象时,对源数据库和目标数据库的表数据对象组成的集合分别遍历,以表名作为key,以表数据对象本身作为value,生成tableMap信息;同样地,对列数据对象组成的集合进行遍历,以tableName作为key,value为该表下的列信息集合;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都长城开发科技有限公司,未经成都长城开发科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110992035.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于工程监理的巡视机器人
- 下一篇:一种基于车道线的物流AGV定位方法





