sys.fn_cdc_get_max_lsn (Transact-SQL)
Restituisce il numero massimo di sequenza del file di log (LSN) nella colonna start_lsn della tabella di sistema cdc.lsn_time_mapping. È possibile utilizzare questa funzione per restituire l'endpoint superiore della cronologia dell'acquisizione dei dati delle modifiche per qualsiasi istanza di acquisizione.
Convenzioni della sintassi Transact-SQL
Sintassi
sys.fn_cdc_get_max_lsn ()
Tipi restituiti
binary(10)
Osservazioni
La funzione restituisce il valore LSN massimo nella colonna start_lsn della tabella cdc.lsn_time_mapping. Pertanto, è l'ultimo valore LSN elaborato dal processo di acquisizione quando le modifiche vengono propagate alle tabelle delle modifiche del database. Viene utilizzato come endpoint superiore per tutte le cronologie associate alle istanze di acquisizione definite per il database.
La funzione viene utilizzata in genere per ottenere un endpoint superiore appropriato per un intervallo di query.
Autorizzazioni
È richiesta l'appartenenza al ruolo del database public.
Esempi
A.Restituzione del valore LSN massimo
Nell'esempio seguente viene restituito il valore LSN massimo per tutte le istanze di acquisizione nel database AdventureWorks2012.
USE AdventureWorks2012;
GO
SELECT sys.fn_cdc_get_max_lsn()AS max_lsn;
B.Impostazione dell'endpoint superiore di un intervallo di query
Nell'esempio seguente è utilizzato il numero LSN massimo restituito da sys.fn_cdc_get_max_lsn per impostare l'endpoint superiore per un intervallo di query per l'istanza di acquisizione 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
Vedere anche
Riferimento
sys.fn_cdc_get_min_lsn (Transact-SQL)