共用方式為


指定合併發行項的互動式衝突解決方法

本主題描述如何使用 SQL Server Management Studio 或 Transact-SQL,在 SQL Server 2012 中針對合併發行項指定互動式衝突解決方法。

Microsoft SQL Server 複寫提供互動式解決器,可讓您在 Microsoft Windows Synchronization Manager 中於需要同步處理期間手動解決衝突。 在啟用互動式解決方案之後,在同步處理期間會使用「互動解決器」以互動方式解決衝突。 互動解決器可以從 Microsoft Windows Synchronization Manager 使用。 如需詳細資訊,請參閱<使用 Windows Synchronization Manager 同步處理訂閱 (Windows Synchronization Manager)>。

本主題內容

  • 開始之前:

    建議

  • 若要指定合併發行項的互動式衝突解決方法,請使用:

    SQL Server Management Studio

    Transact-SQL

開始之前

建議

  • 如果是在 Windows Synchronization Manager 之外執行同步處理 (如 SQL Server Management Studio 或複寫監視器中已排程的同步處理或視需要同步處理),則不需要使用者的介入,就會使用針對發行項指定的預設衝突解決方式來自動解決衝突。 如需詳細資訊,請參閱<互動式衝突解決>。

搭配回到頁首連結使用的箭頭圖示[Top]

使用 SQL Server Management Studio

若要啟用發行項的互動式衝突解決方案

  1. 在「新增發行集精靈」的 [發行項] 頁面,或者在 [發行集屬性 - <Publication>] 對話方塊中,選取一個資料表。 如需有關使用此精靈及存取此對話方塊的詳細資訊,請參閱<建立發行集>和<檢視及修改發行集屬性>。

  2. 按一下 [發行項屬性],然後按一下 [設定反白顯示資料表發行項的屬性][設定所有資料表發行項的屬性]

  3. [發行項屬性 - <Article>][發行項屬性 - <ArticleType>] 頁面中,按一下 [解決器] 標籤。

  4. 選取 [允許訂閱者在依要求同步期間,以互動方式解決衝突]

  5. 按一下 [確定]。

  6. 如果您是在 [發行集屬性 - <Publication>] 對話方塊中,請按一下 [確定] 以儲存並關閉對話方塊。

若要指定訂閱應使用互動式衝突解決方案

  1. [訂閱屬性 - <Subscriber>: <SubscriptionDatabase>] 對話方塊中,為 [以互動方式解決衝突] 選項指定 [True] 值。 如需有關存取這個對話方塊的詳細資訊,請參閱<檢視及修改發送訂閱屬性>與<檢視及修改提取訂閱屬性>。

  2. 按一下 [確定]。

搭配回到頁首連結使用的箭頭圖示[Top]

使用 Transact-SQL

您可以透過程式設計方式指定在建立合併式發行集的提取訂閱時,訂閱者將使用此圖形化介面來解決發行項衝突。 只有支援此選項之發行項中的衝突才會顯示在互動式解決器中。

建立使用互動式解決器的合併式提取訂閱

  1. 在發行集資料庫的發行者上執行 sp_helpmergearticle,指定 @publication。 請記下結果集中每一個發行項的 allow_interactive_resolver 值 (互動式解決器將針對它來使用)。

    • 如果這個值是 1,將會使用互動式解決器。

    • 如果這個值是 0,您必須先針對每一個發行項啟用互動式解決器。 若要這樣做,請執行 sp_changemergearticle,指定 @publication@article,並針對 @property 指定 allow_interactive_resolver 的值及針對 @value 指定 true 的值。

  2. 在訂閱資料庫的訂閱者上,執行 sp_addmergepullsubscription。 如需詳細資訊,請參閱<建立提取訂閱>。

  3. 在訂閱資料庫的訂閱者上,執行 sp_addmergepullsubscription_agent 並指定下列參數:

    • @publisher@publisher_db (發行的資料庫) 和 @publication

    • @enabled_for_syncmgr 設定 true 的值。

    • @use_interactive_resolver 設定 true 的值。

    • 合併代理程式所需的安全性帳戶資訊。 如需詳細資訊,請參閱<建立提取訂閱>。

  4. 在發行集資料庫的發行者上,執行 sp_addmergesubscription

定義支援互動式解決器的發行項

  • 在發行集資料庫的發行者上,執行 sp_addmergearticle。 針對 @publication 指定發行項所屬的發行集名稱、針對 @article 指定發行項名稱、針對 @source_object 指定發行的資料庫物件,以及針對 @allow_interactive_resolver 指定 true 的值。 如需詳細資訊,請參閱<定義發行項>。

搭配回到頁首連結使用的箭頭圖示[Top]

請參閱

工作

檢視並解決合併式發行集的資料衝突 (SQL Server Management Studio)

概念

互動式衝突解決