インタラクティブな競合解決
MicrosoftSQL Server レプリケーションでは、Microsoft Windows 同期マネージャでの要求時同期中に、手動で競合を解決できるインタラクティブ競合回避モジュールを利用できます。インタラクティブ競合回避モジュールを実行時に有効化すると、グラフィカル インターフェイスに競合する各行のデータが表示されます。ここから、競合するデータを表示および編集し、個々の競合を解決できます。
インタラクティブ競合回避モジュールは競合表示モジュールに似ています。ただし、競合表示モジュールではマージ同期後に解決済みの競合の結果が表示されるのに対して、インタラクティブ競合回避モジュールでは解決の前に各競合が表示されるため、マージ同期時に取り込むデータを指定できます。いずれかのユーザーが、競合発生時にインタラクティブ競合回避モジュールを監視できるようになっている必要があります。
注意 |
---|
インタラクティブな競合回避には Windows 同期マネージャが必要です。同期が Windows 同期マネージャの外部で (スケジュールされた同期、SQL Server Management Studio の要求時同期、またはレプリケーション モニタとして) 実行される場合、競合は、アーティクルに指定された競合回避モジュールに従って、ユーザーの介入なしに自動的に解決されます。論理レコードに関連する競合は、インタラクティブ競合回避モジュールには表示されません。これらの競合に関する情報を表示するには、レプリケーション ストアド プロシージャを使用します。詳細については、「マージ パブリケーションの競合情報を表示する方法 (レプリケーション Transact-SQL プログラミング)」を参照してください。 |
アーティクル競合回避モジュールおよびインタラクティブ競合回避モジュール
競合回避モジュール (既定の競合回避モジュール、ビジネス ロジック ハンドラ、カスタム競合回避モジュールのいずれか) は、パブリケーションの作成時に特定のアーティクルに割り当てられます。そこでルールのセットによって、競合している行データを入力したときにどのデータセットを使用するかが決まります。インタラクティブ競合回避モジュールは、競合でどのデータを優先するかを指定するルールを持つ独立した競合回避モジュールではなく、既定またはカスタムの競合回避モジュールと組み合わせて使用するツールです。アーティクル競合回避モジュールでは、どの行を競合で優先し、どの行を優先しないかが指定されますが、インタラクティブ競合回避モジュールでは、その結果にユーザーが介入し、データを受け入れたり、拒否したり、変更したりすることができます。
インタラクティブ競合回避モジュールを使用するには、競合回避を必要とする各アーティクルまたはサブスクリプションに対して、インタラクティブな競合回避を有効にしておく必要があります。1 つ以上のアーティクルまたはサブスクリプションで有効にしておくと、マージ同期中に競合が検出された場合、インタラクティブ競合回避モジュールを使用できます。
インタラクティブ競合回避モジュールを使用するには
SQL Server Management Studio : マージ アーティクルにインタラクティブな競合解決を指定する方法 (SQL Server Management Studio) および Windows 同期マネージャを使用してサブスクリプションを同期する方法 (Windows 同期マネージャ)
レプリケーション プログラミング : マージ アーティクルにインタラクティブな競合回避を指定する方法 (レプリケーション Transact-SQL プログラミング)