sys.fn_cdc_decrement_lsn (Transact-SQL)

Gäller för:SQL Server

Returnerar det föregående log-sekvensnumret (LSN) i sekvensen baserat på det specificerade LSN.

Transact-SQL syntaxkonventioner

Syntax

  
sys.fn_cdc_decrement_lsn ( lsn_value )  

Arguments

lsn_value

LSN-värde. lsn_value är binär(10).

Returtyp

binary(10)

Remarks

LSN som returneras av funktionen är alltid mindre än det angivna värdet, och inga LSN-värden kan existera mellan de två värdena.

Permissions

Kräver medlemskap i den offentliga databasrollen.

Examples

Följande exempel används sys.fn_cdc_decrement_lsn för att sätta den övre LSN-gränsen i en fråga som returnerar förändringsdatarader med LSN-värden mindre än det maximala LSN-värdet.

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  

Note

Fel 313 förväntas om det LSN-intervallet som tillhandahålls inte är lämpligt vid anrop cdc.fn_cdc_get_all_changes_<capture_instance> eller cdc.fn_cdc_get_net_changes_<capture_instance>. Om parametern lsn_value är längre än tiden för lägsta eller högsta LSN, kommer exekveringen av dessa funktioner att returnera fel 313: Msg 313, Level 16, State 3, Line 1 An insufficient number of arguments were supplied for the procedure or function. Det här felet bör hanteras av utvecklaren.