sp_changemergearticle(Transact-SQL)

업데이트: 2006년 4월 14일

병합 아티클의 속성을 변경합니다. 이 저장 프로시저는 게시 데이터베이스의 게시자에서 실행됩니다.

항목 링크 아이콘Transact-SQL 구문 표기 규칙

구문

sp_changemergearticle [ @publication = ] 'publication'
        , [ @article = ] 'article'
    [ , [ @property = ] 'property' ]
    [ , [ @value = ] 'value' ]
    [ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]
    [ , [ @force_reinit_subscription = ] force_reinit_subscription ]

인수

  • [ @publication = ] 'publication'
    아티클이 있는 게시의 이름입니다. publicationsysname이며 기본값은 없습니다.
  • [ @article=] 'article'
    변경할 아티클의 이름입니다. articlesysname이며 기본값은 없습니다.
  • [ @property=] 'property'
    지정된 아티클 및 게시에 대해 변경할 속성입니다. property는 **nvarchar(30)**이며 표에 나열된 값 중 하나일 수 있습니다.
  • [ @value=] 'value'
    지정한 속성에 대한 새 값입니다. value는 **nvarchar(1000)**이며 표에 나열된 값 중 하나일 수 있습니다.

    다음 표에서는 아티클의 속성 및 해당 속성의 값을 설명합니다.

    속성

  • [ @force_invalidate_snapshot = ] force_invalidate_snapshot
    이 저장 프로시저가 수행한 작업으로 인해 기존 스냅숏이 무효화될 수도 있습니다. force_invalidate_snapshotbit이며 기본값은 0입니다.

    0은 병합 아티클에 대한 변경으로 인해 스냅숏이 무효화되지 않도록 지정합니다. 저장 프로시저가 새 스냅숏을 필요로 하는 변경을 감지하면 오류가 발생하며 변경이 수행되지 않습니다.

    1은 병합 아티클의 변경이 스냅숏을 무효화함을 의미하며 새 스냅숏을 필요로 하는 기존 구독이 있는 경우 오래됨으로 표시될 기존 스냅숏과 생성될 새 스냅숏에 대해 사용 권한을 부여합니다.

    변경 시 새 스냅숏의 생성을 필요로 하는 속성에 대해서는 주의 섹션을 참조하십시오.

  • [ @force_reinit_subscription = ] force_reinit_subscription
    이 저장 프로시저가 수행한 작업으로 인해 기존 구독을 다시 초기화해야 할 수도 있습니다. force_reinit_subscriptionbit이며 기본값은 0입니다.

    0은 병합 아티클에 대한 변경으로 인해 구독이 다시 초기화되지 않도록 지정합니다. 저장 프로시저가 기존 구독의 다시 초기화를 필요로 하는 변경을 감지하면 오류가 발생하며 변경이 수행되지 않습니다.

    1은 병합 아티클에 대한 변경으로 인해 기존 구독이 다시 초기화됨을 의미하며 구독을 다시 초기화할 수 있는 권한을 부여합니다.

    변경 시 기존의 모든 구독을 다시 초기화해야 하는 속성에 대해서는 주의 섹션을 참조하십시오.

반환 코드 값

0(성공) 또는 1(실패)

주의

sp_changemergearticle은 병합 복제에 사용됩니다.

sp_changemergearticlesp_addmergearticle을 사용하여 초기에 지정된 아티클 속성을 변경하는 데 사용되므로 이러한 속성에 대한 추가 정보는 sp_addmergearticle을 참조하십시오.

다음 속성을 변경하려면 새 스냅숏을 생성해야 하며 force_invalidate_snapshot 매개 변수 값으로 1을 지정해야 합니다.

  • check_permissions
  • column_tracking
  • destination_owner
  • pre_creation_cmd
  • schema_options
  • subset_filterclause

다음 속성을 변경하려면 기존 구독을 다시 초기화해야 하며 force_reinit_subscription 매개 변수 값으로 1을 지정해야 합니다.

  • check_permissions
  • column_tracking
  • destination_owner
  • subscriber_upload_options
  • subset_filterclause

partition_options 값으로 3을 지정하면 병합 에이전트가 실행될 때마다 메타데이터가 정리되어 분할된 스냅숏은 더 빨리 만료됩니다. 이 옵션을 사용할 때는 구독자가 요청한 분할된 스냅숏을 활성화해야 합니다. 자세한 내용은 매개 변수가 있는 필터를 사용하는 병합 게시의 스냅숏을 참조하십시오.

column_tracking 속성을 설정할 때 테이블이 이미 다른 병합 게시에 게시된 경우 열 추적은 이 테이블을 기반으로 하는 기존 아티클이 사용하는 값과 같아야 합니다. 이 매개 변수는 테이블 아티클에만 해당합니다.

여러 게시에서 같은 기본 테이블에 기반을 둔 아티클을 게시하는 경우 한 아티클에 대한 delete_tracking 속성 또는 compensate_for_errors 속성을 변경하면 같은 테이블에 기반을 둔 다른 아티클에도 동일한 변경이 적용됩니다.

병합 프로세스가 사용하는 게시자 로그인/사용자 계정에 올바른 테이블 사용 권한이 없는 경우 잘못된 변경은 충돌로 기록됩니다.

schema_option 값을 변경하면 시스템은 비트 단위 업데이트를 수행하지 않습니다. 즉, 이는 sp_changemergearticle을 사용하여 schema_option을 설정하는 경우 기존 비트 설정이 해제됨을 의미합니다. 기존 설정을 유지하려면 설정하려는 값과 sp_helpmergearticle을 실행하여 얻는 schema_option의 현재 값 간에 &(비트 AND)를 수행해야 합니다.

유효한 스키마 옵션 표

다음 표에서는 아티클 유형에 따라 허용되는 schema_option 값에 대해 설명합니다.

아티클 유형 스키마 옵션 값

func schema only

0x010x2000

indexed view schema only

0x01, 0x040, 0x0100, 0x2000, 0x40000, 0x10000000x200000

proc schema only

0x010x2000

table

모든 옵션

view schema only

0x01, 0x040, 0x0100, 0x2000, 0x40000, 0x10000000x200000

사용 권한

sysadmin 고정 서버 역할 또는 db_owner 고정 데이터베이스 역할의 멤버만 sp_changemergearticle을 실행할 수 있습니다.

DECLARE @publication AS sysname;
DECLARE @article AS sysname;
SET @publication = N'AdvWorksSalesOrdersMerge';
SET @article = N'SalesOrderHeader';

-- Enable column-level conflict tracking.
-- Changing this property requires that existing subscriptions
-- be reinitialized and that a new snapshot be generated.
USE [AdventureWorks]
EXEC sp_changemergearticle 
  @publication = @publication,
  @article = @article, 
  @property = N'column_tracking', 
  @value = N'true',
  @force_invalidate_snapshot = 1,
  @force_reinit_subscription = 1;
GO

참고 항목

참조

sp_add_targetservergroup(Transact-SQL)
sp_dropmergearticle(Transact-SQL)
sp_helpmergearticle(Transact-SQL)
복제 저장 프로시저(Transact-SQL)

관련 자료

How to: View and Modify Article Properties (Replication Transact-SQL Programming)
게시 및 아티클 속성 변경

도움말 및 정보

SQL Server 2005 지원 받기

변경 내역

릴리스 내역

2006년 4월 14일

변경된 내용
  • schema_option 속성의 0x20000000 값에 대한 설명을 업데이트했습니다.

2005년 12월 5일

새로운 내용
  • schema_option 매개 변수에 대해 0x20 옵션을 설정할 때의 제한 사항을 추가했습니다.
변경된 내용
  • 테이블 아티클의 기본 스키마 옵션 값에 대한 정보를 업데이트했습니다.