限制同步的字段

时间:2010-07-13 05:10:50

标签: sql windows-mobile synchronization sync microsoft-sync-framework

我正在构建一个在Windows Mobile设备上运行的应用程序。我正在使用Microsoft的Sync Framework将Sql CE数据库与主企业数据库同步。

问题是如何限制同步的字段?有问题的表有多个字段,但我只需要在移动设备上显示一些字段,复制只有一种方式(从服务器到移动设备),所以这不应该是一个问题。我看过this类似的问题,但那里的信息不多。谁能给我更多关于如何实现这一目标的建议?我想这是一个非常普遍的要求。

此外,有谁知道我是否可以使用Sync Framework 2.0版,或者我必须坚持使用1.0。我有一种感觉,2.0不支持Windows Mobile,但我不确定。

干杯
标记

1 个答案:

答案 0 :(得分:2)

您可以将在幕后生成的T-SQL更改为不包括表格的所有列,但这里有几个问题。首先,这意味着您以后不能使用向导来修改同步选择 - 这不是什么大问题,并且创建自己的部分类以仅使用表的T-SQL覆盖特定方法可以缓解这一点。 / p>

其次,对未包含的更改(不确定是否为单词?)列也可以触发该行的下载,因为默认情况下,更改跟踪是按行进行的。您可以通过设置Track_Columns_Updated标志

来更改此设置
ALTER TABLE Employee
ENABLE CHANGE_TRACKING
WITH (TRACK_COLUMNS_UPDATED = ON)

根据数据的行数和大小以及更新的频率,我经常发现一个更简单的解决方案是在服务器主表上提供一个触发器来更新包含您需要的数据的单独表中的记录,然后同步。它可以更轻松地更改以后下载的内容。如果您要下载莎士比亚的全部作品,这显然不是解决方案,但对于产品目录的1000条记录,我认为这是完全可行的。