CHANGE_TRACKING_MIN_VALID_VERSION(Transact-SQL)
CHANGETABLE 함수를 사용할 경우 지정된 테이블에서 변경 내용 추적 정보를 가져오는 데 사용할 수 있는 최소 버전을 반환합니다.
구문
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 ...)