Sql 在事务性复制中,可以强制复制的命令彼此跟随吗?
我们在SQL Server 2012机箱和SQL Server 2016机箱之间设置了事务复制 每半个小时,源表文章都会按Sql 在事务性复制中,可以强制复制的命令彼此跟随吗?,sql,sql-server,database-administration,transactional-replication,Sql,Sql Server,Database Administration,Transactional Replication,我们在SQL Server 2012机箱和SQL Server 2016机箱之间设置了事务复制 每半个小时,源表文章都会按删除然后插入顺序进行更改。此序列来自由SSIS包执行的存储过程。有时DELETE已复制到订阅服务器,但INSERT尚未复制到订阅服务器 结果是订阅服务器上临时缺少数据。当命令被复制到复制中的所有项目时,此临时状态可能会持续几分钟。这些表格项目用作订阅服务器SSRS报告的基础,由于此问题,SSRS报告变得不准确 在存放DELETE-INSERT语句的存储过程中,我们尝试将这两个
删除
然后插入
顺序进行更改。此序列来自由SSIS包执行的存储过程。有时DELETE
已复制到订阅服务器,但INSERT
尚未复制到订阅服务器
结果是订阅服务器上临时缺少数据。当命令被复制到复制中的所有项目时,此临时状态可能会持续几分钟。这些表格项目用作订阅服务器SSRS报告的基础,由于此问题,SSRS报告变得不准确
在存放DELETE-INSERT
语句的存储过程中,我们尝试将这两个命令包装在BEGIN-TRAN
-COMMIT-TRAN
中,但这似乎没有帮助
理想情况下,delete-insert可以使用不同的SQL命令组合在一起立即执行(有点像MERGE
),或者将命令包装成类似于BEGIN-TRAN
-COMMIT-TRAN