首先感谢您的阅读。
我需要复制基于连接过滤器的一部分数据; 根据与另一个表的连接进行筛选过滤(Microsoft:“使用连接过滤器,您可以将一行过滤器从一个发布表扩展到另一个表。”)。这是设置:
SQL Server 2012;
订阅事务复制的复制源
复制需要单向同步(从发布者到订阅者);
只有一个订阅者/订阅;
数据集较小,没有太多交易;
WAN网络。
我迄今为止建立的内容:
选项1 -创建视图并通过事务复制将其复制到表中。
优点:不使用触发器,
缺点:不会复制键、约束等对象
选项2-使用合并复制和连接筛选器,并设置 @subscriber_upload_options = 2(仅下载)。
优点:原生的MS功能,所有对象都被复制
缺点:合并复制使用触发器,这些触发器不会随着批量加载而触发
这两种方法的结果完全相同。然而,技术上有所不同,例如使用不同的代理程序。据我了解,合并复制特别适用于服务器 - 客户端架构,但这不是我的情况,但是它确实起作用。
由于结果相同,我有点怀疑应该遵循哪种方法。我希望您能给我一些要考虑的要点或建议我应该遵循哪种方法。
我需要复制基于连接过滤器的一部分数据; 根据与另一个表的连接进行筛选过滤(Microsoft:“使用连接过滤器,您可以将一行过滤器从一个发布表扩展到另一个表。”)。这是设置:
SQL Server 2012;
订阅事务复制的复制源
复制需要单向同步(从发布者到订阅者);
只有一个订阅者/订阅;
数据集较小,没有太多交易;
WAN网络。
我迄今为止建立的内容:
选项1 -创建视图并通过事务复制将其复制到表中。
优点:不使用触发器,
缺点:不会复制键、约束等对象
选项2-使用合并复制和连接筛选器,并设置 @subscriber_upload_options = 2(仅下载)。
优点:原生的MS功能,所有对象都被复制
缺点:合并复制使用触发器,这些触发器不会随着批量加载而触发
这两种方法的结果完全相同。然而,技术上有所不同,例如使用不同的代理程序。据我了解,合并复制特别适用于服务器 - 客户端架构,但这不是我的情况,但是它确实起作用。
由于结果相同,我有点怀疑应该遵循哪种方法。我希望您能给我一些要考虑的要点或建议我应该遵循哪种方法。