sp_addsynctriggers(Transact-SQL)

업데이트할 수 있는 모든 유형의 구독(즉시 업데이트, 대기 업데이트 및 장애 조치로 지연 업데이트를 사용하는 즉시 업데이트)에 사용되는 구독자에서 트리거를 만들 수 있습니다. 이 저장 프로시저는 구독 데이터베이스의 구독자에서 실행됩니다.

중요 정보중요

sp_addsynctrigger 대신 sp_script_synctran_commands 프로시저를 사용해야 합니다. sp_script_synctran_commandssp_addsynctrigger 호출이 포함된 스크립트를 생성합니다.

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

구문

sp_addsynctriggers [ @sub_table = ] 'sub_table' 
        , [ @sub_table_owner = ] 'sub_table_owner' 
        , [ @publisher = ] 'publisher' 
        , [ @publisher_db = ] 'publisher_db' 
        , [ @publication = ] 'publication'  
        , [ @ins_proc = ] 'ins_proc'  
        , [ @upd_proc = ] 'upd_proc'  
        , [ @del_proc = ] 'del_proc'  
        , [ @cftproc = ] 'cftproc'
        , [ @proc_owner = ] 'proc_owner'
    [ , [ @identity_col = ] 'identity_col' ]
    [ , [ @ts_col = ] 'timestamp_col' ]
    [ , [ @filter_clause = ] 'filter_clause' ] 
        , [ @primary_key_bitmap = ] 'primary_key_bitmap'
    [ , [ @identity_support = ] identity_support ]
    [ , [ @independent_agent = ] independent_agent ]
        , [ @distributor = ] 'distributor' 
    [ , [ @pubversion = ] pubversion

인수

  • [ **@sub\_table=**\] 'sub_table'
    구독자 테이블의 이름입니다. sub_table은 sysname이며 기본값은 없습니다.

  • [ **@sub\_table\_owner=**\] 'sub_table_owner'
    구독자 테이블의 소유자 이름입니다. sub_table_owner는 sysname이며 기본값은 없습니다.

  • [ **@publisher=**\] 'publisher'
    게시자 서버의 이름입니다. publisher는 sysname이며 기본값은 없습니다.

  • [ **@publisher\_db=**\] 'publisher_db'
    게시자 데이터베이스의 이름입니다. publisher_db는 sysname이며 기본값은 없습니다. NULL인 경우 현재 데이터베이스가 사용됩니다.

  • [ **@publication=**\] 'publication'
    게시의 이름입니다. Publication은 sysname이며 기본값은 없습니다.

  • [ **@ins\_proc=**\] 'ins_proc'
    게시자에서 동기 트랜잭션 삽입을 지원하는 저장 프로시저의 이름입니다. ins_proc는 sysname이며 기본값은 없습니다.

  • [ **@upd\_proc=**\] 'upd_proc'
    게시자에서 동기 트랜잭션 업데이트를 지원하는 저장 프로시저의 이름입니다. ins_proc는 sysname이며 기본값은 없습니다.

  • [ **@del\_proc=**\] 'del_proc'
    게시자에서 동기 트랜잭션 삭제를 지원하는 저장 프로시저의 이름입니다. ins_proc는 sysname이며 기본값은 없습니다.

  • [ @cftproc = ] 'cftproc'
    지연 업데이트를 허용하는 게시에 의해 사용되는 자동 생성 프로시저의 이름입니다. cftproc는 sysname이며 기본값은 없습니다. 즉시 업데이트를 허용하는 게시의 경우 이 값은 NULL입니다. 이 매개 변수는 지연 업데이트(지연 업데이트 및 장애 조치로 지연 업데이트를 사용하는 즉시 업데이트)를 허용하는 게시에 적용됩니다.

  • [ @proc\_owner = ] 'proc_owner'
    게시를 업데이트(지연 및/또는 즉시 업데이트)하기 위해 자동 생성된 모든 저장 프로시저가 만들어진 게시자의 사용자 계정을 지정합니다. proc_owner는 sysname이며 기본값은 없습니다.

  • [ **@identity\_col=**\] 'identity_col'
    게시자에서 ID 열의 이름입니다. identity_colsysname이며 기본값은 NULL입니다.

  • [ **@ts\_col=**\] 'timestamp_col'
    게시자에서 timestamp 열의 이름입니다. timestamp_col은 sysname이며 기본값은 NULL입니다.

  • [ **@filter\_clause=**\] 'filter_clause'
    행 필터를 정의하는 제한(WHERE) 절입니다. 제약 조건 절을 입력할 때는 키워드인 WHERE를 생략합니다. filter_clause는 **nvarchar(4000)**이며 기본값은 NULL입니다.

  • [ @primary\_key\_bitmap =] 'primary_key_bitmap'
    테이블에 있는 기본 키 열의 비트맵입니다. primary_key_bitmap은 **varbinary(4000)**이며 기본값은 없습니다.

  • [ @identity\_support = ] identity_support
    지연 업데이트가 사용될 경우 자동 ID 범위 처리를 설정/해제합니다. identity_support는 bit이며 기본값은 0입니다. 0은 ID 범위에 대한 지원이 없음을 나타내며 1은 자동 ID 범위 처리를 사용합니다.

  • [ @independent\_agent = ] independent_agent
    이 게시에 대해 단일 배포 에이전트가 있는지(독립 에이전트) 또는 게시 데이터베이스 및 구독 데이터베이스 쌍당 하나의 배포 에이전트가 있는지(공유 에이전트) 여부를 나타냅니다. 이 값은 게시자에서 정의된 게시의 independent_agent 속성 값을 반영합니다. independent_agent는 bit이며 기본값은 0입니다. 0인 경우 해당 에이전트는 공유 에이전트입니다. 1인 경우 해당 에이전트는 독립 에이전트입니다.

  • [ @distributor = ] 'distributor'
    배포자의 이름입니다. distributor는 sysname이며 기본값은 없습니다.

  • [ **@pubversion**= ] pubversion
    게시자의 버전을 나타냅니다. pubversion은 int이며 기본값은 1입니다. 1은 게시자가 Microsoft SQL Server 2000 서비스 팩 2 이전 버전이고 2는 게시자가 SQL Server 2000 서비스 팩 3(SP3) 이상 버전임을 나타냅니다. 게시자 버전이 SQL Server 2000 SP3 이상이면 pubversion을 명시적으로 2로 설정해야 합니다.

반환 코드 값

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

주의

sp_addsynctriggers는 배포 에이전트에 의해 구독 초기화의 일부로 사용됩니다. 일반적으로 사용자는 이 저장 프로시저를 실행하지 않지만 no-sync 구독을 수동으로 설정해야 하는 경우 유용할 수 있습니다.

사용 권한

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

참고 항목

참조

sp_script_synctran_commands(Transact-SQL)

시스템 저장 프로시저(Transact-SQL)

개념

트랜잭션 복제를 위한 업데이트 가능 구독