重新初始化订阅 (SQL Server Compact Edition)
应用程序可以使用 Replication 对象重新初始化现有的 Microsoft SQL Server 订阅,以便从发布服务器下载新的快照数据。当 Microsoft SQL Server 2005 Compact Edition (SQL Server Compact Edition) 订阅中包含由发布服务器进行定期更新的只读数据时,此方法尤其有用。
调用 ReinitializeSubscription 方法
应用程序通过创建 Replication 对象,设置相应的 Replication 对象属性,然后调用 ReInitializeSubscription 方法(复制)方法来重新初始化订阅。
注意: |
---|
在 Microsoft Visual C++ for Devices 中,应用程序必须在 Replication 对象的单个实例中连续调用 ReinitializeSubscription、Initialize 方法(复制)、Run 方法(复制)和 Terminate 方法(复制)。这一点至关重要,因为当应用程序调用 ReinitializeSubscription 时,现有的副本仅标记为用于重新初始化。只有在应用程序调用 Initialize、Run 和 Terminate 后,现有的副本才会删除,同时将此发布的新副本从发布服务器下载到设备上。使用托管代码时,将只使用 ReinitializeSubscription 方法。 |
本主题中的示例说明如何重新初始化订阅。
多个订阅和 ReinitializeSubscription 方法
由于 SQL Server Compact Edition 支持对具有多个发布的单个数据库进行同步,因此在使用 ReinitializeSubscription 方法重新初始化订阅时必须考虑多个订阅的影响。
- 如果数据库中仅包含一个订阅,ReinitializeSubscription 方法就会将此订阅标记为在下次同步时重新初始化。
- 如果数据库中包含多个订阅,则必须设置 Publisher、Publication 和 PublisherDatabase 属性以指示要重新初始化的订阅。
注意: |
---|
每次自动重新同步时,都会将其视为 SQL Server 的一次独立同步。因此,SQL Server 复制监视器将为每个订阅提供独立的同步。在 SQL Server Compact Edition 订阅服务器上,将对 SqlCeReplication 类的 PublisherChanges、SubscriberChanges、PublisherConflicts 和 SubscriberConflicts 属性的值进行累加,由最后一次同步的返回值提供所有同步的总和。 |
请参阅
任务
如何重新初始化 SQL Server Compact Edition 订阅(以编程方式)
概念
其他资源
Replication 对象的方法
Replication 对象属性