一种数据同步时使用ROWID定位的方法与流程

文档序号:17442239发布日期:2019-04-17 04:55阅读:567来源:国知局
一种数据同步时使用ROWID定位的方法与流程

本发明涉及数据同步技术领域,具体涉及一种数据同步时使用rowid定位的方法。



背景技术:

在数据同步时,通常使用参数绑定批量执行,以加快执行速度。但是有一些数据表没有主键,在同步无主键的数据表时性能往往是很差的,因为数据表没有主键,就无法使用主键绑定批量执行,只能单行执行,造成同步性能低。而且,由于目的端数据表同样也没有主键,因此同步的sql在数据库中的执行效率同样非常的低.

现有技术中对于没有主键的数据表通常采用两种同步方式,一种是通过全列匹配的方式修改数据,还有一种是在目的端数据表上额外添加一个rowid映射列来存放源端的rowid值,然后通过匹配rowid映射列来同步数据修改操作。第一种方式由于需要全列匹配,因此同步性能很差;第二种方式会破坏目的端数据表的表结构,并且还需要为rowid映射列额外的建立索引,较为费时,效率低下。



技术实现要素:

本发明的目的在于克服上述技术不足,提供一种数据同步时使用rowid定位的方法,解决现有技术中数据表没有主键时,数据同步性能差、需要建立索引、效率低下的技术问题。

为达到上述技术目的,本发明的技术方案提供一种数据同步时使用rowid定位的方法,包括以下步骤:

步骤s1、同步新增数据时,指定目的端数据表中rowid值,使得源端数据表的rowid值与目的端数据表的rowid值一一对应;

步骤s2、同步修改数据时,通过匹配rowid值的方式进行数据修改操作的定位,并完成数据修改操作的同步。

与现有技术相比,本发明的有益效果包括:通过指定目的端数据表rowid值的方式,使得源端数据表的rowid值与目的端数据表的rowid值一一对应,由于rowid是表的聚集主键,相当于一个隐形的主键。同步数据修改操作时,即可将rowid值当做主键,根据rowid值进行定位,使用rowid值绑定实现修改操作同步的批量操作。

附图说明

图1是本发明提供的数据同步时使用rowid定位的方法的流程图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

实施例1:

如图1所示,本发明的实施例1提供了一种数据同步时使用rowid定位的方法,包括以下步骤:

步骤s1、同步新增数据时,指定目的端数据表中rowid值,使得源端数据表的rowid值与目的端数据表的rowid值一一对应;

步骤s2、同步修改数据时,通过匹配rowid值的方式进行数据修改操作的定位,并完成数据修改操作的同步。

在目的端数据库上,数据表中的记录是用rowid来组织的,rowid值具有唯一性,并且提供了允许在插入数据时自定义rowid值的功能。本发明利用rowid值的唯一性,提供了一种数据同步时使用rowid定位的方法,通过指定目的端数据表中rowid值的方式,使得源端数据表的rowid值与目的端数据表的rowid值一一对应,从而使得rowid值成为一个隐形的主键,通过rowid值来定位目的端数据表中与待同步的数据修改操作相应的位置,通过绑定rowid值来批量执行数据修改操作的同步,不需要在数据表上额外创建主键或索引,也不会改变目的端数据表的结构,数据同步性能高、效率高。

具体的,本发明的应用需要目的数据库提供插入数据时,允许为每行数据指定rowid值的功能。

优选的,所述指定目的端数据表中rowid值具体为:

通过insrt操作指定目的端数据表中rowid值。

通过insrt操作指定目的段数据表中rowid值,方便快捷,使得rowid值成为联系源端数据表与目的端数据表的纽带,通过rowid值即可快速定位到源端数据表与目的端数据表的相应位置,从而使得数据修改操作可以通过绑定rowid值实现批量执行,提高同步效率。

优选的,所述步骤s2具体为:

根据所述数据修改操作所关联的数据在源端数据表中的rowid值,定位至所述目的端数据表中rowid值所在对应位置,在所述目的端数据表的对应位置执行所述数据修改操作,完成数据修改操作的同步。

将目的端数据表中rowid值指定为与源端数据表一一对应后,rowid值就成为了隐形的主键,可以用来联系源端数据表和目的端数据表,通过rowid值即可快速定位到源端数据表与目的端数据表的相应位置,从而使得数据修改操作可以通过绑定rowid值实现批量执行,提高同步效率。

实施例2:

本发明的实施例1提供了一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现以上任一实施例所述的数据同步时使用rowid定位的方法。

本发明提供的计算机存储介质,用于实现上述数据同步时使用rowid定位的方法,因此,上述数据同步时使用rowid定位的方法具备的技术效果,计算机存储介质同样具备,在此不再赘述。

以上所述本发明的具体实施方式,并不构成对本发明保护范围的限定。任何根据本发明的技术构思所做出的各种其他相应的改变与变形,均应包含在本发明权利要求的保护范围内。



技术特征:

技术总结
本发明公开一种数据同步时使用ROWID定位的方法,包括以下步骤:步骤S1、同步新增数据时,指定目的端数据表中ROWID值,使得源端数据表的ROWID值与目的端数据表的ROWID值一一对应;步骤S2、同步修改数据时,通过匹配ROWID值的方式进行数据修改操作的定位,并完成数据修改操作的同步。本发明提供的数据同步时使用ROWID定位的方法,通过指定目的端数据表ROWID值的方式,利用ROWID列默认是表的聚集主键优势,使用ROWID值绑定实现修改操作同步的批量操作,数据同步性能高、效率高。

技术研发人员:孙峰;付铨;杨春
受保护的技术使用者:武汉达梦数据库有限公司
技术研发日:2018.11.12
技术公布日:2019.04.16
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1