sys.fn_cdc_get_max_lsn (Transact-SQL)
Devuelve el número de secuencia de registro máximo (LSN) de la columna start_lsn en 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.
Sintaxis
sys.fn_cdc_get_max_lsn ()
Tipos de valor devueltos
binary(10)
Notas
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. Para obtener más información acerca de la escala de tiempo de captura de datos del cambio, vea Configuración del mecanismo de captura de datos modificados.
La función se utiliza normalmente para obtener un extremo final superior adecuado para un intervalo de consulta.
Permisos
Debe pertenecer a la función de la base de datos public.
Ejemplos
A. Devolver el valor LSN máximo
El ejemplo siguiente devuelve el LSN máximo para todas las instancias de captura en la base de datos AdventureWorks.
USE AdventureWorks;
GO
SELECT sys.fn_cdc_get_max_lsn()AS max_lsn;
B. Establecer el extremo alto de un intervalo 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 AdventureWorks;
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
Vea también