Udostępnij za pośrednictwem


sys.fn_cdc_increment_lsn (języka Transact-SQL)

Zwraca kolejny numer sekwencyjny dziennika (LSN) w sekwencji na podstawie określonego LSN.

Ikona łącza do tematuJęzyka Transact-SQL składni konwencje

Składnia

sys.fn_cdc_increment_lsn ( lsn_value )

Argumenty

  • lsn_value
    WartośćLSN .lsn_valueis binary(10).

Zwracany typ

binary(10)

Uwagi

LSN wartość zwracana przez funkcja jest zawsze większa niż określona wartość, a nie wartości LSN istnieją między dwiema wartościami.

Systematycznie kwerendy strumienia danych zmian w czas, możesz powtórzyć wywołanie funkcja query okresowo, każdy czas , podając nowy interwał kwerendy powiązana zmiany zwrócone w kwerendzie.Aby upewnić się, że żadne dane nie są tracone, górna granica poprzedniej kwerendy jest często używany do generowania dolną granicą kolejne kwerendy.Interwał kwerendy jest interwał zamknięte, dlatego nowy dolną granicą musi być większy niż poprzednie górna granica, ale wystarczająco mały, aby zapewnić zmiany nie mają wartości LSN , pomiędzy tę wartość i stare górna granica.funkcjasys.fn_cdc_increment_lsn jest używany do uzyskiwania wartości.

Uprawnienia

Wymaga członkostwa w public rola bazy danych.

Przykłady

W poniższym przykładzie użyto sys.fn_cdc_increment_lsn do generowania nową wartość dolnej granicy Zmień kwerendę przechwytywania danych oparte na górną granicą zapisywane z poprzedniej kwerendy, a w zmiennej @save_to_lsn.

USE AdventureWorks2008R2;
GO
DECLARE @from_lsn binary(10), @to_lsn binary(10), @save_to_lsn binary(10);
SET @save_to_lsn = <previous_upper_bound_value>;
SET @from_lsn = sys.fn_cdc_increment_lsn(@save_to_lsn);
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