sys.fn_cdc_get_max_lsn (Transact-SQL)

Retorna o LSN (número de sequência de log) máximo da coluna start_lsn na tabela do sistema cdc.lsn_time_mapping. É possível usar essa função para retornar o ponto de extremidade superior da linha do tempo de captura de dados de alteração para qualquer instância de captura.

Ícone de vínculo de tópico Convenções da sintaxe Transact-SQL

Sintaxe

sys.fn_cdc_get_max_lsn ()

Tipos de retorno

binary(10)

Comentários

Essa função retorna o LSN (número de sequência de log) máximo da coluna start_lsn da tabela cdc.lsn_time_mapping. Como tal, ele é o último LSN processado pelo processo de captura quando as alterações são propagadas para as tabelas de alteração do banco de dados. Ele serve como ponto de extremidade superior de todas as linhas do tempo associadas às instâncias de captura definidas para o banco de dados.

A função é tipicamente usada para obter um ponto de extremidade superior apropriado para um intervalo de consulta.

Permissões

Exige a associação à função de banco de dados public.

Exemplos

A.Retornando o valor LSN máximo

O exemplo a seguir retorna o LSN máximo para todas as instâncias de captura no banco de dados AdventureWorks2012.

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

B.Definindo o ponto de extremidade superior de um intervalo de consulta

O exemplo a seguir usa o LSN máximo retornado por sys.fn_cdc_get_max_lsn para definir o ponto de extremidade superior de um intervalo de consulta da instância de captura HumanResources_Employee.

USE AdventureWorks2012;
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 também

Referência

sys.fn_cdc_get_min_lsn (Transact-SQL)

Conceitos

O log de transações (SQL Server)