设为首页 加入收藏

TOP

SqlServer更改跟踪(ChangTracking)(三)
2015-07-24 10:16:01 来源: 作者: 【 】 浏览:4
Tags:SqlServer 更改 跟踪 ChangTracking
o].[TargetTestTab] K ON D.id=K.id WHERE SYS_CHANGE_OPERATION = 'U' --delete : DELETE FROM [dbo].[TargetTestTab] WHERE id IN( SELECT id FROM CHANGETABLE(CHANGES dbo.TestTab,3) AS T WHERE SYS_CHANGE_OPERATION = 'D' )
转移数据前,先查看当前的版本号 CHANGE_TRACKING_CURRENT_VERSION() ,例如500 。而上面的操作中,版本号为3,这批数据相应更改完成后,下次从版本号500开始。当然可能有误差,因为在操作这批数据时,当前可能有其他操作,版本号也在累计。

?

建议使用快照隔离级别,保证事务的一致性:

?

ALTER DATABASE [MyDatabase] SET ALLOW_SNAPSHOT_ISOLATION ON;

最后禁用更改跟踪:

?

--对表禁用
ALTER TABLE [dbo].[TestTab] DISABLE CHANGE_TRACKING 
GO
--对数据库禁用
ALTER DATABASE [MyDatabase] SET CHANGE_TRACKING = OFF 
GO

首页 上一页 1 2 3 下一页 尾页 3/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇SqlServer变更数据捕获(CDC) 下一篇用PL/SQLDeveloper工具实现相同表..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·如何从内核协议栈到 (2025-12-27 03:19:09)
·什么是网络协议?有哪 (2025-12-27 03:19:06)
·TCP/ IP协议有哪些 (2025-12-27 03:19:03)
·怎样用 Python 写一 (2025-12-27 02:49:19)
·如何学习python数据 (2025-12-27 02:49:16)