Sdílet prostřednictvím


CHANGE_TRACKING_MIN_VALID_VERSION (Transact-SQL)

platí pro:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL databáze v Microsoft Fabric

Vrátí minimální verzi na klientovi, která je platná pro získání informací o sledování změn z dané tabulky, když používáte funkci CHANGETABLE .

Transact-SQL konvence syntaxe

Syntaxe

  
CHANGE_TRACKING_MIN_VALID_VERSION ( table_object_id )  

Arguments

table_object_id
je ID objektu tabulky. table_object_id je int.

Návratový typ

bigint

Poznámky

Použijte tuto funkci k ověření hodnoty parametru last_sync_version pro CHANGETABLE. Pokud je last_sync_version menší než hodnota, kterou tato funkce uvádí, výsledky vrácené pozdějším voláním do CHANGETABLE nemusí být platné.

CHANGE_TRACKING_MIN_VALID_VERSION používá následující informace k určení návratové hodnoty:

  • Když byla tabulka povolena pro sledování změn.

  • Když byla spuštěna úloha čištění pozadí, aby se odstranily informace o sledování změn starší než byla doba uchovávání stanovená pro databázi.

  • Pokud byla tabulka zkrácena, odstraní se tím veškeré informace o sledování změn, které jsou s tabulkou spojeny.

Funkce vrací NULL, pokud je splněna některá z následujících podmínek:

  • Sledování změn není v databázi zapnuté.

  • Specifikované ID objektu tabulky není platné pro aktuální databázi.

  • Nedostatečné oprávnění k tabulce specifikované ID objektu.

Examples

Následující příklad určuje, zda je zadaná verze platná. Příklad získá minimální platnou verzi tabulky dbo.Employees a poté ji porovná s hodnotou proměnné @last_sync_version . Pokud je hodnota nižší @last_sync_version než hodnota , @min_valid_versionseznam změněných řádků nebude platný.

Poznámka:

Obvykle jste hodnotu získávali z tabulky nebo jiného místa, kde jste ukládali poslední číslo verze používané k synchronizaci dat.

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

Viz také

Funkce sledování změn (Transact-SQL)
sys.change_tracking_tables (Transact-SQL)