다음을 통해 공유


CHANGE_TRACKING_MIN_VALID_VERSION(Transact-SQL)

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은 다음 정보를 사용하여 반환 값을 결정합니다.

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

  • 데이터베이스에 대해 지정된 보존 기간보다 오래된 qusurd sodyd 추적 정보를 제거하기 위해 백그라운드 정리 태스크가 실행된 경우

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

다음 조건 중 하나에 해당할 경우 함수가 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 ...)