2012-02-23 2 views
0

병합 복제를 사용하면 대부분 테이블이 정상적으로 동기화됩니다. 그러나 테이블에는 클라이언트에서 의미있게 편집되고 사용되는 일시적인 클라이언트 측 데이터를 저장하는 데 사용되는 하나의 열이 포함되어 있으며 서버로 다시 복제 할 필요가 없습니다. 예를 들어이 경우병합 복제에서 개별 열을 추적 할 수 없도록 허용

CREATE TABLE MyTable (
    ID   UNIQUEIDENTIFIER NOT NULL PRIMARY KEY, 
    Name   NVARCHAR(200), 
    ClientCode NVARCHAR(100) 
) 

, 가입자가 테이블에 ClientCode 열을 변경하는 경우에도, 나는 그 변화가 서버에 다시 받고 싶지 않아요. 병합 복제는이를 수행하기위한 어떤 수단을 제공합니까?

내가 다시 생각해 볼 수있는 또 다른 방법은 추가 테이블을 게시하고 "구독자에게만 다운로드, 구독자 변경 허용"으로 구성한 다음 해당 테이블의 MyTable.ID를 참조하는 것입니다. ClientCode와 함께 그러나 절대적으로 필요하지 않으면 추가 테이블을 게시 할 필요가 없습니다.

감사합니다,

-Dan

답변

0

발행물에있는 문서를 만들 때 예,이 열을 포함하지 않는다. 그런 다음이 열을 테이블에 다시 추가하는 스크립트를 만들고 스냅 숏 아래의 게시 속성에서 스냅 숏이 적용된 후이 스크립트가 실행되도록 지정합니다.

즉, 열은 게시자와 구독자 모두에 있지만 복제에 의해 완전히 무시됩니다. 물론 무시할 열 (들)이 null 인 경우에만이 기술을 사용할 수 있습니다.