是否可以将框架配置为仅基于没有同步表的过滤器以及在正常同步过程中使用的所有这些附加表来传输记录?
谢谢!
简短的回答是不,你不能。但是,请继续阅读以获得更完整的答案。
解决方法:
有一种方法可以绕过架构中对额外表的需求。如果您使用 SQL 2008 和同步框架 1.0 对象(SyncAgent,而不是 SyncOrchestrator),则可以使用 SQL 2008 的内置更改跟踪。这根本不会弄乱您的架构。SQL 2008 仍将跟踪更改,您只是不必看到一堆表使您的架构混乱。
长答案(使用同步框架 2.* 对象):
同步表和跟踪表作为组成同步框架系统的一组模式、存储过程和进程的一部分工作。尽管您可能能够构建一个过滤器,只允许您选择更改,但系统的其余部分仍然需要跟踪表。跟踪表不仅跟踪插入/更新行的时间,还跟踪最后一次更改是本地更改还是通过远程数据库的同步框架应用的。跟踪更改的来源是真正为同步框架增加价值的关键事物之一,因此是框架中的核心概念。
如果您要尝试消除跟踪表,至少,您还必须更新每个存储过程(每个表的所有 8+ ......)。您根本无法摆脱同步表(schema_info、scope_*) - 对它们的需求不在存储过程中,而是内置在框架的核心中。