다음을 통해 공유


CHANGE_TRACKING_MIN_VALID_VERSION(Transact-SQL)

적용 대상: SQL ServerAzure SQL Database Azure SQL Managed Instance

CHANGETABLE 함수를 사용하는 경우 지정된 테이블에서 변경 내용 추적 정보를 가져오는 데 사용할 수 있는 클라이언트의 최소 버전을 반환합니다.

Transact-SQL 구문 표기 규칙

구문

  
CHANGE_TRACKING_MIN_VALID_VERSION ( table_object_id )  

인수

table_object_id
테이블의 개체 ID입니다. table_object_id int입니다.

반환 형식

bigint

설명

이 함수를 사용하여 CHANGETABLE에 대한 last_sync_version 매개 변수 값의 유효성을 검사합니다. last_sync_version 이 함수에서 보고하는 값보다 작으면 나중에 CHANGETABLE 호출에서 반환된 결과가 유효하지 않을 수 있습니다.

CHANGE_TRACKING_MIN_VALID_VERSION 다음 정보를 사용하여 반환 값을 확인합니다.

  • 변경 내용 추적이 설정된 경우

  • 백그라운드 정리 작업을 실행하여 데이터베이스에 지정된 보존 기간보다 오래된 변경 내용 추적 정보를 제거한 경우

  • 테이블이 잘린 경우 테이블과 연결된 모든 변경 내용 추적 정보가 제거됩니다.

다음 조건 중 하나에 해당할 경우 함수가 NULL을 반환합니다.

  • 데이터베이스에 대해 변경 내용 추적을 사용할 수 없습니다.

  • 지정한 테이블 개체 ID가 현재 데이터베이스에 유효하지 않습니다.

  • 개체 ID로 지정한 테이블에 대한 권한이 부족한 경우

예제

다음 예제에서는 지정된 버전이 유효한 버전인지 여부를 확인합니다. 이 예제에서는 테이블의 dbo.Employees 유효한 최소 버전을 가져온 다음 이를 변수 값 @last_sync_version 과 비교합니다. 값 @last_sync_version 이 값 @min_valid_version보다 낮으면 변경된 행 목록이 유효하지 않습니다.

참고 항목

일반적으로 데이터를 동기화하는 데 사용된 마지막 버전 번호를 저장한 테이블 또는 다른 위치에서 값을 가져옵니다.

-- The tracked change is tagged with the specified context   
DECLARE @min_valid_version bigint, @last_sync_version bigint;  
  
SET @min_valid_version =   
CHANGE_TRACKING_MIN_VALID_VERSION(OBJECT_ID('dbo.Employees'));  
  
SET @last_sync_version = 11  
IF (@last_sync_version < @min_valid_version)  
-- Error � do not obtain changes  
ELSE  
-- Obtain changes using CHANGETABLE(CHANGES ...)  

참고 항목

변경 내용 추적 함수(Transact-SQL)
sys.change_tracking_tables(Transact-SQL)