Share via


sys.fn_cdc_get_max_lsn (Transact-SQL)

Se aplica a:SQL Server

Devuelve el número máximo de secuencia de registro (LSN) de la columna start_lsn de la tabla del sistema cdc.lsn_time_mapping . Puede utilizar esta función para devolver el extremo alto de la escala de tiempo de captura de los datos del cambio para cualquier instancia de captura.

Convenciones de sintaxis de Transact-SQL

Sintaxis

  
sys.fn_cdc_get_max_lsn ()  

Tipos de valor devuelto

binary(10)

Comentarios

Esta función devuelve el LSN máximo en la columna start_lsn de la tabla cdc.lsn_time_mapping . Por tanto, es el último LSN procesado por el proceso de captura cuando los cambios se propagan a las tablas de cambios de base de datos. Actúa como extremo superior para todas las escalas de tiempo asociadas con las instancias de captura definidas para la base de datos.

La función se utiliza normalmente para obtener un extremo final superior adecuado para un intervalo de consulta.

Permisos

Debe pertenecer al rol de base de datos public.

Ejemplos

A. Devolver el valor LSN máximo

En el ejemplo siguiente se devuelve el LSN máximo para todas las instancias de captura de la base de datos AdventureWorks2022.

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

B. Establecer el extremo alto de un rango de la consulta

El ejemplo siguiente utiliza el LSN máximo devuelto por sys.fn_cdc_get_max_lsn para establecer el extremo alto para un intervalo de consultas para la instancia de captura HumanResources_Employee.

USE AdventureWorks2022;  
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  

Consulte también

sys.fn_cdc_get_min_lsn (Transact-SQL)
El registro de transacciones (SQL Server)