sys.fn_cdc_decrement_lsn (Transact-SQL)
Aplica-se: SQL Server
Retorna o LSN (número de sequência de log) anterior na sequência baseada no LSN especificado.
Convenções de sintaxe de Transact-SQL
Sintaxe
sys.fn_cdc_decrement_lsn ( lsn_value )
Argumentos
lsn_value
Valor do LSN. lsn_value é binário(10).
Tipo de retorno
binary(10)
Comentários
O LSN retornado pela função é sempre inferior ao valor especificado e nenhum valor de LSN pode existir entre os dois valores.
Permissões
Requer associação na função de banco de dados público .
Exemplos
O exemplo a seguir usa sys.fn_cdc_decrement_lsn
para definir o limite LSN superior em uma consulta que retorna linhas de dados alterados com valores LSN inferiores ao valor LSN máximo.
Use AdventureWorks2022;
GO
DECLARE @from_lsn binary(10), @to_lsn binary(10);
SET @from_lsn = sys.fn_cdc_get_min_lsn('HumanResources_Employee');
SET @to_lsn = sys.fn_cdc_decrement_lsn(sys.fn_cdc_get_max_lsn());
SELECT * FROM cdc.fn_cdc_get_all_changes_HumanResources_Employee( @from_lsn, @to_lsn, 'all');
GO
Observação
O erro 313 é esperado se o intervalo LSN fornecido não for apropriado ao chamar cdc.fn_cdc_get_all_changes_<capture_instance>
ou cdc.fn_cdc_get_net_changes_<capture_instance>
. Se o lsn_value
parâmetro estiver além do tempo do LSN mais baixo ou do LSN mais alto, a execução dessas funções retornará no erro 313: Msg 313, Level 16, State 3, Line 1 An insufficient number of arguments were supplied for the procedure or function
. Esse erro deve ser resolvido pelo desenvolvedor.