CHANGE_TRACKING_MIN_VALID_VERSION (Transact-SQL)

Gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-databas i Microsoft Fabric

Returnerar den minsta versionen på klienten som är giltig för användning för att hämta ändringsspårningsinformation från den angivna tabellen, när du använder funktionen CHANGETABLE .

Transact-SQL syntaxkonventioner

Syntax

  
CHANGE_TRACKING_MIN_VALID_VERSION ( table_object_id )  

Arguments

table_object_id
Är objekt-ID:t för tabellen. table_object_id är en int.

Returtyp

bigint

Anmärkningar

Använd denna funktion för att validera värdet på parametern last_sync_version för CHANGETABLE. Om last_sync_version är mindre än det värde som rapporteras av denna funktion kan resultaten som returneras från ett senare anrop till CHANGETABLE vara ogiltiga.

CHANGE_TRACKING_MIN_VALID_VERSION använder följande information för att bestämma returvärdet:

  • När tabellen aktiverades för ändringsspårning.

  • När bakgrundsrensningsuppgiften kördes för att ta bort ändringsspårningsinformation som var äldre än den angavla lagringsperioden för databasen.

  • Om tabellen har trunkerats tas all information om förändringsspårning bort som är kopplad till tabellen.

Funktionen returnerar NULL om något av följande villkor är uppfyllt:

  • Ändringsspårning är inte aktiverad för databasen.

  • Det specificerade tabellobjekt-ID:t är inte giltigt för den aktuella databasen.

  • Otillräcklig behörighet till tabellen som specificeras av objekt-ID:t.

Examples

Följande exempel avgör om en specificerad version är en giltig version. Exemplet får den minsta giltiga versionen av dbo.Employees tabellen och jämför sedan denna med variabelns värde @last_sync_version . Om värdet av @last_sync_version är lägre än värdet av @min_valid_version, kommer listan över ändrade rader inte att vara giltig.

Anmärkning

Du skulle vanligtvis hämta värdet från en tabell eller annan plats där du lagrade det senaste versionsnumret som användes för att synkronisera data.

-- The tracked change is tagged with the specified context   
DECLARE @min_valid_version bigint, @last_sync_version bigint;  
  
SET @min_valid_version =   
CHANGE_TRACKING_MIN_VALID_VERSION(OBJECT_ID('dbo.Employees'));  
  
SET @last_sync_version = 11  
IF (@last_sync_version < @min_valid_version)  
-- Error � do not obtain changes  
ELSE  
-- Obtain changes using CHANGETABLE(CHANGES ...)  

Se även

Ändringsspårningsfunktioner (Transact-SQL)
sys.change_tracking_tables (Transact-SQL)