Condividi tramite


CHANGE_TRACKING_MIN_VALID_VERSION (Transact-SQL)

Restituisce la versione minima valida da utilizzare per ottenere informazioni sul rilevamento delle modifiche dalla tabella specificata quando si utilizza la funzione CHANGETABLE.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

CHANGE_TRACKING_MIN_VALID_VERSION ( table_object_id )

Argomenti

  • table_object_id
    ID oggetto della tabella. table_object_id è di tipo int

Tipo restituito

bigint

Osservazioni

Utilizzare questa funzione per convalidare il valore del parametro last_sync_version per CHANGETABLE. Se last_sync_version è inferiore al valore riportato da questa funzione, i risultati restituiti da una chiamata successiva a CHANGETABLE potrebbero non essere validi.

CHANGE_TRACKING_MIN_VALID_VERSION utilizza le informazioni seguenti per determinare il valore restituito:

  • Quando è stato attivato il rilevamento delle modifiche per la tabella.

  • Quando è stata eseguita l'attività di pulizia in background per rimuovere le informazioni sul rilevamento delle modifiche anteriori al periodo di memorizzazione specificato per il database.

  • Se la tabella è stata troncata. In questo modo vengono rimosse tutte le informazioni sul rilevamento delle modifiche associate alla tabella.

La funzione restituisce NULL se si verifica una delle condizioni seguenti:

  • Rilevamento modifiche non attivato per il database.

  • ID oggetto della tabella specifica non valido per il database corrente.

  • Autorizzazione insufficiente per la tabella specificata dall'ID oggetto.

Esempi

Nell'esempio seguente viene illustrato come determinare la validità della versione specificata. È necessario ottenere la minima versione valida della tabella dbo.Employees, confrontandola quindi con il valore della variabile @last\_sync\_version. Se il valore di @last\_sync\_version è inferiore al valore di @min\_valid\_version, l'elenco delle righe modificate non sarà valido.

[!NOTA]

È possibile ottenere il valore da una tabella o da un altro percorso in cui è stato memorizzato l'ultimo numero di versione utilizzato per sincronizzare i dati.

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