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