다음을 통해 공유


sys.fn_cdc_get_max_lsn(Transact-SQL)

cdc.lsn_time_mapping 시스템 테이블의 start_lsn 열에서 최대 LSN(로그 시퀀스 번호)을 반환합니다. 이 함수를 사용하면 원하는 캡처 인스턴스에 대한 변경 데이터 캡처 시간대의 상위 끝점을 반환할 수 있습니다.

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

구문

sys.fn_cdc_get_max_lsn ()

반환 형식

binary(10)

주의

이 함수는 cdc.lsn_time_mapping 테이블의 start_lsn 열에서 최대 LSN을 반환합니다. 즉, 이 LSN은 변경 내용이 데이터베이스 변경 테이블로 전파될 때 캡처 프로세스에 의해 처리되는 마지막 LSN이며, 데이터베이스에 대해 정의된 캡처 인스턴스와 연결된 모든 시간대의 상위 끝점 역할도 합니다. 변경 데이터 캡처 시간대에 대한 자세한 내용은 변경 데이터 캡처 구성을 참조하십시오.

일반적으로 이 함수는 쿼리 간격에 대한 적절한 상위 끝점을 가져오는 데 사용됩니다.

사용 권한

public 데이터베이스 역할의 멤버여야 합니다.

1. 최대 LSN 값 반환

다음 예에서는 AdventureWorks2008R2 데이터베이스의 모든 캡처 인스턴스에 대한 최대 LSN을 반환합니다.

USE AdventureWorks2008R2;
GO
SELECT sys.fn_cdc_get_max_lsn()AS max_lsn;

2. 쿼리 범위의 상위 끝점 설정

다음 예에서는 sys.fn_cdc_get_max_lsn에서 반환된 최대 LSN을 사용하여 HumanResources_Employee 캡처 인스턴스에 대한 쿼리 범위의 상위 끝점을 설정합니다.

USE AdventureWorks2008R2;
GO
DECLARE @from_lsn binary(10), @to_lsn binary(10);
SET @from_lsn = sys.fn_cdc_get_min_lsn(N'HumanResources_Employee');
SET @to_lsn = sys.fn_cdc_get_max_lsn();
SELECT * FROM cdc.fn_cdc_get_all_changes_HumanResources_Employee(@from_lsn, @to_lsn, 'all');
GO