다음을 통해 공유


sp_changemergefilter(Transact-SQL)

적용 대상: SQL Server

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

Transact-SQL 구문 표기 규칙

구문

sp_changemergefilter
    [ @publication = ] N'publication'
    , [ @article = ] N'article'
    , [ @filtername = ] N'filtername'
    , [ @property = ] N'property'
    , [ @value = ] N'value'
    [ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]
    [ , [ @force_reinit_subscription = ] force_reinit_subscription ]
[ ; ]

인수

[ @publication = ] N'publication'

게시의 이름 @publication 기본값이 없는 sysname입니다.

[ @article = ] N'article'

아티클의 이름입니다. @article 기본값이 없는 sysname입니다.

[ @filtername = ] N'filtername'

필터의 현재 이름입니다. @filtername sysname이며 기본값은 없습니다.

[ @property = ] N'property'

변경할 속성의 이름입니다. @property sysname이며 기본값은 없습니다.

[ @value = ] N'value'

지정된 속성의 새 값입니다. @value nvarchar(1000)이며 기본값은 없습니다.

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

속성 설명
filter_type 1 조인 필터입니다.

이 옵션은 SQL Server Compact 구독자를 지원하는 데 필요합니다.
2 논리적 레코드 관계입니다.
3 조인 필터는 논리적 레코드 관계이기도 합니다.
filtername 필터의 이름입니다.
join_articlename 조인 문서의 이름입니다.
join_filterclause 필터 절입니다.
join_unique_key true 조인이 고유 키에 있습니다.
false 조인은 고유 키에 있지 않습니다.

[ @force_invalidate_snapshot = ] force_invalidate_snapshot

이 저장 프로시저에서 수행한 작업이 기존 스냅샷을 무효화할 수 있음을 인정합니다. @force_invalidate_snapshot 비트이며 기본값은 .입니다0.

  • 0 는 병합 아티클을 변경해도 스냅샷이 잘못되지 않도록 지정합니다. 저장 프로시저에서 변경에 새 스냅샷이 필요하다는 것을 감지하면 오류가 발생하고 변경되지 않습니다.

  • 1 는 병합 아티클을 변경하면 스냅샷이 유효하지 않을 수 있으며, 새 스냅샷이 필요한 기존 구독이 있는 경우 기존 스냅샷을 사용되지 않는 것으로 표시하고 생성된 새 스냅샷에 대한 권한을 부여합니다.

[ @force_reinit_subscription = ] force_reinit_subscription

이 저장 프로시저에서 수행한 작업에 기존 구독을 다시 초기화해야 할 수 있음을 인정합니다. @force_reinit_subscription 비트이며 기본값은 .입니다0.

  • 0 는 병합 아티클을 변경해도 구독이 다시 초기화되지 않도록 지정합니다. 저장 프로시저가 변경 시 기존 구독을 다시 초기화해야 한다는 것을 감지하면 오류가 발생하고 변경되지 않습니다.

  • 1 는 병합 아티클의 변경 내용이 기존 구독을 다시 초기화하고 구독 다시 초기화가 발생할 수 있는 권한을 부여한다는 의미입니다.

반환 코드 값

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

설명

sp_changemergefilter 는 병합 복제에 사용됩니다.

병합 아티클에서 필터를 변경하려면 스냅샷(있는 경우)을 다시 만들어야 합니다. 이 작업은 @force_invalidate_snapshot .로 설정하여 수행됩니다1. 이 문서에 대한 구독이 있는 경우 구독을 다시 초기화해야 하며, 이 작업은 @force_reinit_subscription 설정하여 1수행됩니다.

논리 레코드를 사용하려면 게시 및 아티클이 몇 가지 요구 사항을 충족해야 합니다. 자세한 내용은 논리적 레코드를 사용하여 관련된 행의 변경 내용 그룹화를 참조하세요.

사용 권한

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