sys.fn_cdc_get_max_lsn (Transact-SQL)

適用於:SQL Server

傳回cdc.lsn_time_mapping系統資料表中 start_lsn資料行的最大記錄序號 (LSN)。 您可以使用此函式傳回任何擷取實例之異動資料擷取時程表的高端點。

Transact-SQL 語法慣例

語法

  
sys.fn_cdc_get_max_lsn ()  

傳回型別

binary(10)

備註

此函式會傳回cdc.lsn_time_mapping 資料表start_lsn 資料行中的 LSN 上限。 因此,當變更傳播至資料庫變更資料表時,擷取程式會處理最後一個 LSN。 它會做為與針對資料庫定義之擷取實例相關聯的所有時間軸的高端點。

函式通常用於取得查詢間隔的適當高端點。

權限

需要公用資料庫角色的成員資格。

範例

A. 傳回最大 LSN 值

下列範例會傳回 AdventureWorks2022 資料庫中所有擷取實例的最大 LSN。

USE AdventureWorks2022;  
GO  
SELECT sys.fn_cdc_get_max_lsn()AS max_lsn;  

B. 設定查詢範圍的高端點

下列範例會使用 所 sys.fn_cdc_get_max_lsn 傳回的最大 LSN,為擷取實例 HumanResources_Employee 設定查詢範圍的高端點。

USE AdventureWorks2022;  
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  

另請參閱

sys.fn_cdc_get_min_lsn (Transact-SQL)
交易記錄 (SQL Server)