다음을 통해 공유


sp_publication_validation(Transact-SQL)

적용 대상: SQL Server Azure SQL Managed Instance

지정된 게시에서 각 아티클에 대한 아티클 유효성 검사 요청을 시작합니다. 이 저장 프로시저는 게시 데이터베이스의 게시자에서 실행됩니다.

Transact-SQL 구문 표기 규칙

구문

sp_publication_validation
    [ @publication = ] N'publication'
    [ , [ @rowcount_only = ] rowcount_only ]
    [ , [ @full_or_fast = ] full_or_fast ]
    [ , [ @shutdown_agent = ] shutdown_agent ]
    [ , [ @publisher = ] N'publisher' ]
[ ; ]

인수

[ @publication = ] N'publication'

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

[ @rowcount_only = ] rowcount_only

테이블의 행 수만 반환할지 여부를 지정합니다. @rowcount_only smallint이며 다음 값 중 하나일 수 있습니다.

설명
0 SQL Server 7.0 호환 체크섬을 수행합니다.

참고: 아티클을 가로로 필터링하면 체크섬 작업 대신 행 수 작업이 수행됩니다.
1(기본값) 행 개수 검사만 수행합니다.
2 행 수 및 이진 체크섬을 수행합니다.

[ @full_or_fast = ] full_or_fast

행 개수를 계산하는 데 사용되는 메서드입니다. @full_or_fast tinyint이며 다음 값 중 하나일 수 있습니다.

설명
0 를 사용하여 전체 개수를 수행 COUNT(*)합니다.
1 에서 sysindexes.rows빠른 개수를 수행합니다. sys.sysindexes의 행 개수를 계산하는 것은 실제 테이블의 행을 계산하는 것보다 빠릅니다. 그러나 sys.sysindexes 가 지연 업데이트되므로 행 수는 정확하지 않을 수 있습니다.
2(기본값) 먼저 빠른 방법을 시도함으로써 조건부로 빠른 계산 방법을 수행합니다. 빠른 메서드에 차이점이 표시되면 전체 메서드로 되돌려 줍니다. 값이 NULL 있는 경우 저장 프로시저를 사용하여 값을 가져오는 경우 expected_rowcount 항상 전체 COUNT(*) 가 사용됩니다.

[ @shutdown_agent = ] shutdown_agent

유효성 검사가 완료된 즉시 배포 에이전트 종료해야 하는지 여부를 지정합니다. @shutdown_agent 비트이며 기본값은 .입니다0.

  • 이 경우 0복제 에이전트가 종료되지 않습니다.
  • 이 경우 1마지막 아티클의 유효성을 검사한 후 복제 에이전트가 종료됩니다.

[ @publisher = ] N'publisher'

SQL Server 이외 게시자를 지정합니다. @publisher sysname이며 기본값은 .입니다NULL.

@PUBLISHER SQL Server 게시자에서 유효성 검사를 요청할 때 사용하면 안 됩니다.

반환 코드 값

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

설명

sp_publication_validation 는 트랜잭션 복제에 사용됩니다.

sp_publication_validation 는 게시와 연결된 아티클이 활성화된 후 언제든지 호출할 수 있습니다. 이 프로시저는 수동으로(한 번) 실행하거나 데이터의 유효성을 검사하는 정기적으로 예약된 작업의 일부로 실행할 수 있습니다.

애플리케이션에 즉시 업데이트 구독자가 있는 sp_publication_validation 경우 가짜 오류를 검색할 수 있습니다. sp_publication_validation 먼저 게시자에서 행 개수 또는 체크섬을 계산한 다음 구독자에서 계산합니다. 즉시 업데이트 트리거는 게시자에서 행 개수 또는 체크섬이 완료된 후 구독자에서 게시자에게 업데이트를 전파할 수 있지만 구독자에서 행 개수 또는 체크섬이 완료되기 전에 값이 변경될 수 있습니다. 게시의 유효성을 검사하는 동안 구독자 및 게시자의 값이 변경되지 않도록 하려면 유효성 검사 중에 게시자에서 MS DTC(Microsoft Distributed Transaction Coordinator) 서비스를 중지합니다.

사용 권한

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