sys.fn_cdc_get_max_lsn (Transact-SQL)
Область применения: SQL Server
Возвращает максимальный номер последовательности журнала (LSN) из столбца start_lsn в системной таблице cdc.lsn_time_mapping . Эту функцию можно использовать для возврата верхней конечной точки временной шкалы системы отслеживания измененных данных для любого экземпляра отслеживания.
Соглашения о синтаксисе Transact-SQL
Синтаксис
sys.fn_cdc_get_max_lsn ()
Типы возвращаемых данных
binary(10)
Замечания
Эта функция возвращает максимальный номер LSN в столбце start_lsn таблицы cdc.lsn_time_mapping . Этот последний номер LSN, обрабатываемый процессом отслеживания, когда изменения передаются в таблицы изменений базы данных. Он служит в качестве верхней конечной точки для любой временной шкалы, связанной с экземплярами отслеживания, определенными для базы данных.
Эта функция обычно используется, чтобы получить подходящую верхнюю конечную точку для интервала запроса.
Разрешения
Требует членства в роли базы данных public.
Примеры
А. Возвращение максимального значения номера LSN
В следующем примере возвращается максимальный номер LSN для всех экземпляров записи в базе данных AdventureWorks2022.
USE AdventureWorks2022;
GO
SELECT sys.fn_cdc_get_max_lsn()AS max_lsn;
B. Установка верхней конечной точки запроса по диапазону
В следующем примере номер LSN, возвращенный функцией sys.fn_cdc_get_max_lsn
, используется для установки верхней конечной точки запроса по диапазону для экземпляра отслеживания 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
См. также
sys.fn_cdc_get_min_lsn (Transact-SQL)
Журнал транзакций (SQL Server)