Delen via


CHANGE_TRACKING_MIN_VALID_VERSION (Transact-SQL)

van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-database in Microsoft Fabric

Geeft de minimale versie op de client terug die geldig is voor gebruik bij het verkrijgen van wijzigingstrackinginformatie uit de opgegeven tabel, wanneer je de CHANGETABLE-functie gebruikt.

Transact-SQL syntaxis-conventies

Syntaxis

  
CHANGE_TRACKING_MIN_VALID_VERSION ( table_object_id )  

Arguments

table_object_id
Is de object-ID van de tabel. table_object_id is een int.

Retourtype

bigint

Opmerkingen

Gebruik deze functie om de waarde van de last_sync_version parameter voor CHANGETABLE te valideren. Als last_sync_version kleiner is dan de waarde die door deze functie wordt gerapporteerd, kunnen de resultaten die later aan CHANGETABLE worden teruggegeven niet geldig zijn.

CHANGE_TRACKING_MIN_VALID_VERSION gebruikt de volgende informatie om de retourwaarde te bepalen:

  • Toen de tabel werd ingeschakeld voor wijzigingstracking.

  • Wanneer de achtergrondopruimtaak werd uitgevoerd om wijzigingstrackinginformatie te verwijderen die ouder was dan de voor de database gespecificeerde bewaartermijn.

  • Als de tabel is afgekapt, verwijdert dit alle wijzigingstracking die aan de tabel is gekoppeld.

De functie geeft NULL terug als een van de volgende voorwaarden waar is:

  • Wijzigingstracking is niet ingeschakeld voor de database.

  • De gespecificeerde tabelobject-ID is niet geldig voor de huidige database.

  • Onvoldoende toestemming voor de tabel die door de object-ID is gespecificeerd.

Voorbeelden

Het volgende voorbeeld bepaalt of een gespecificeerde versie een geldige versie is. Het voorbeeld verkrijgt de minimaal geldige versie van de dbo.Employees tabel en vergelijkt deze vervolgens met de waarde van de @last_sync_version variabele. Als de waarde van @last_sync_version lager is dan die van @min_valid_version, is de lijst met gewijzigde rijen niet geldig.

Opmerking

Je haalde de waarde meestal uit een tabel of andere locatie waar je het laatste versienummer had opgeslagen dat werd gebruikt om data te synchroniseren.

-- 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 ...)  

Zie ook

functies voor het bijhouden van wijzigingen (Transact-SQL)
sys.change_tracking_tables (Transact-SQL)