添加到表的列不同步

时间:2015-10-27 15:36:01

标签: sql-server database microsoft-sync-framework

我正在使用Microsoft Sync Framework。我有一个客户端数据库和一个服务器数据库,每隔一段时间它们就会相互同步。没有失败或任何事情。

但是,当我在某些表中的服务器上添加新列时,这些列不会同步。如果我然后删除范围,它将被重新创建,然后新列将成为新范围的一部分,但是当我开始同步时,它会显示“无效的ColumnName'XY'”。

我可以去客户端并在那里添加列,但这绝对不是最好的方法。

此外,当我在服务器上添加新表时,他们不想进入范围。到目前为止只是改变范围将是一个机会但是,我在范围内缺少:

 <Adapter Name="[tblnewTable]" GlobalName="[tblnewTable]" TrackingTable="[tblnewTable_tracking]" SelChngProc="[tblnewTable_selectchanges_0e06c509-3402-4898-b8e6-cc8885fa8c35]" >

我不太确定这个随机数来自何处,因为它位于Scope的每个适配器名称中。

我在Microsoft Library上找不到任何内容,所以也许有人可以回答其中一个问题:

是否有一种向同步添加新列的简单方法? 如何将新表纳入范围?

编辑:我使用此博客条目找出了它:http://myazurejourney.blogspot.de/2010/06/how-to-re-provision-scope-in-microsoft.html#comment-form

我在客户端和服务器两侧配置了数据库,然后使用上面发布的博客中的功能重新配置了一个完整的新范围。现在它有效。

1 个答案:

答案 0 :(得分:0)

添加新对象,无论是新列还是新表等,都需要更改现有范围信息xml数据。我在博客后做了同样的事情:https://jtabadero.wordpress.com/2011/04/28/modifying-sync-framework-scope-definition-part-4-workarounds-adding-a-table-to-an-existing-scope/