sys.fn_cdc_decrement_lsn (Transact-SQL)

Si applica a:SQL Server

Restituisce il precedente numero di sequenza del file di log (LSN) nella sequenza basata sul valore LSN specificato.

Convenzioni di sintassi Transact-SQL

Sintassi

  
sys.fn_cdc_decrement_lsn ( lsn_value )  

Argomenti

lsn_value

Valore LSN. lsn_value è binary(10).

Tipo restituito

binary(10)

Osservazioni:

Il valore LSN restituito dalla funzione è sempre inferiore al valore specificato e non può esistere alcun valore LSN tra i due valori.

Autorizzazioni

Richiede l'appartenenza al ruolo del database pubblico .

Esempi

Nell'esempio seguente è utilizzato sys.fn_cdc_decrement_lsn per impostare il limite LSN superiore in una query che restituisce righe dei dati delle modifiche che hanno valori LSN inferiori al valore LSN massimo.

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  

Nota

L'errore 313 è previsto se l'intervallo LSN specificato non è appropriato quando si chiama cdc.fn_cdc_get_all_changes_<capture_instance> o cdc.fn_cdc_get_net_changes_<capture_instance>. Se il lsn_value parametro supera il tempo di LSN minimo o LSN più alto, l'esecuzione di queste funzioni restituirà l'errore 313: Msg 313, Level 16, State 3, Line 1 An insufficient number of arguments were supplied for the procedure or function. Questo errore deve essere gestito dallo sviluppatore. L'esempio di T-SQL per una soluzione alternativa è disponibile in ReplTalk su GitHub.

Vedi anche