【技术实现步骤摘要】
一种基于ODBC访问的数据库比较方法
本专利技术属于计算机软件应用领域,涉及关系数据库的应用,可用于关系型数据库内容比较,具体涉及一种基于ODBC访问的数据库比较方法。
技术介绍
在数据库应用背景下,为了了解不同业务或不同时期的数据变化情况或数据一致性,经常需要对两个数据库进行比较,所比较的两个数据库可以是同一类型的数据库,也可以是异构的不同类型数据库。一般情况下,数据库提供商会提供数据迁移、数据导入导出、数据备份等功能,若需比较的数据库为统一厂商统一类型数据库,则两个数据库间可以互相通信,但大多数未提供数据库比较功能;对于不同厂商数据库,则基本上不能直接数据通信,因此无法直接进行数据比较。开放式数据库互连(OpenDatabaseConnectivity,ODBC)是微软公司开放服务体系关于数据库的部分,它建立了一组规范并提供了访问数据库的标准API。通过ODBCAPI和各数据库厂商提供的驱动程序,上层应用程序可以忽略数据库厂商的区别直接进行数据库访问。本专利技术利用ODBC技术,实现了与厂商无关的数据库比较方法,可以在关系型数据库所涉及领域进行应用。
技术实现思路
本专利技术所要解决的技术问题是针对上述现有技术提供了一种基于ODBC访问的数据库比较方法,实现了与厂商无关的数据库比较方法,可以在关系型数据库所涉及领域进行应用。本专利技术解决上述问题所采用的技术方案为:一种基于ODBC访问的数据库比较方法,该方法的输入数据为两组数据库的连接信息,通过ODBC访问技术 ...
【技术保护点】
1.一种基于ODBC访问的数据库比较方法,其特征在于该方法的输入数据为两组数据库的连接信息,通过ODBC访问技术获取数据库内容,输出信息为两组数据库表的比较结果,具体包括以下步骤:/n步骤1)、建立ODBC连接,初始化比较环境;/n步骤2)、获取数据库表字段信息和数据库表内容;/n步骤3)、针对每个表进行构造格式化文本,计算数据库表结构的比较结果,若整体相似度为小于1,则该表比较结果为不同,继续下一个表比较,否则转到步骤4);/n步骤4、针对每个表计算数据库表内容的比较结果,若比较结果相同,则该表比较结果为相同,否则该表比较结果为不同。/n
【技术特征摘要】
1.一种基于ODBC访问的数据库比较方法,其特征在于该方法的输入数据为两组数据库的连接信息,通过ODBC访问技术获取数据库内容,输出信息为两组数据库表的比较结果,具体包括以下步骤:
步骤1)、建立ODBC连接,初始化比较环境;
步骤2)、获取数据库表字段信息和数据库表内容;
步骤3)、针对每个表进行构造格式化文本,计算数据库表结构的比较结果,若整体相似度为小于1,则该表比较结果为不同,继续下一个表比较,否则转到步骤4);
步骤4、针对每个表计算数据库表内容的比较结果,若比较结果相同,则该表比较结果为相同,否则该表比较结果为不同。
2.根据权利要求1所述的一种基于ODBC访问的数据库比较方法,其特征在于所述步骤3)中的格式化文本包括文本keys和文本内容,文本keys包括列名称、类型、长度、能否为空、是否为主键、默认值和说明,文本内容为数据库相关信息。
3.根据权利要求1所述的一种基于ODBC访问的数据库比较方法,其特征在于步骤3)在对于每个表构造的格式化文本采用基于加权优选的格式化文本比较方法进行比较,该方法的输入内容为两组格式化的文本Rx、Ry和比较参数Spx和Spy,其中比较参数Spx和Spy分别包括比较列和关键列,输出内容为基于最优比较策略的两组格式化文本、每行格式化文本的比较相似度和整体相似度。
4.根据权利要求3所述的一种基于ODBC访问的数据库比较方法,其特征在于所述的采用基于加权优选的格式化文本比较方法包括以下步骤:
步骤1)整理数据,初始化比较环境。
步骤2)对于需要比较的数据列,采用一种扩展的的文本相似度计算方法计算比较单元的相似度;
步骤3)构造两组格式化文本相似度矩阵;
步骤4)查找并排序每行文本的最优比较策略;
步骤5)输出比较策略和文本相似度。
5.根据权利要求4所述的一种基于ODBC访问的数据库比较方法,其特征在于所述方法具体包括以下步骤:
步骤1)整理数据,验正比较参数Spx和Spy一致性,Spx与Rx、Spy与Ry匹配性,如果不匹配,直接返回错误;分配相似度矩阵空间;若Rx长度小于Ry长度,则对两组文本进行交换;
步骤2)、对于Rx的每一行Rx[i]和Ry的每一行Ry[j],做如下循环:
对于输入的每一比较列Spx[k]和Spy[l],采用一种扩展的文本相似度计算方法计算文本Rx[i][Spx[k]]和Ry[j][Spy[l]]相似度,并将每一比较列相似度相加;
对于输入的每一关键列Spx[k]和Spy[l],采用一种扩展的文...
【专利技术属性】
技术研发人员:李永刚,侯亚威,胡上成,郭力兵,汪毅,毛文,吴云,杨海民,伊瑞海,邓育民,黄为,
申请(专利权)人:中国人民解放军六三六八六部队,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。