CHANGE_TRACKING_MIN_VALID_VERSION (Transact-SQL)

Retourne la version minimale qui peut être utilisée en obtenant les informations de suivi des modifications à partir de la table spécifiée, lorsque vous utilisez la fonction CHANGETABLE.

Icône Lien de rubriqueConventions de syntaxe Transact-SQL

Syntaxe

CHANGE_TRACKING_MIN_VALID_VERSION ( table_object_id )

Arguments

  • table_object_id
    ID d'objet de la table. table_object_id est de type int.

Type de retour

bigint

Notes

Utilisez cette fonction pour valider la valeur du paramètre last_sync_version pour CHANGETABLE. Si last_sync_version est inférieur à la valeur indiquée par cette fonction, les résultats retournés d'un appel ultérieur à CHANGETABLE peuvent ne pas être valides.

CHANGE_TRACKING_MIN_VALID_VERSION utilise les informations suivantes pour déterminer la valeur de retour :

  • Lorsque la table a été activée pour le suivi des modifications.

  • Lorsque la tâche de nettoyage en arrière-plan s'est exécutée pour supprimer des informations de suivi des modifications antérieures à la période de rétention spécifiée pour la base de données.

  • Si la table a été tronquée. Cette instruction supprime toutes les informations de suivi des modifications associées à la table.

La fonction retourne la valeur NULL si l'une des conditions suivantes est remplie :

  • Le suivi des modifications n'est pas activé pour la base de données.

  • L'ID d'objet de table spécifié n'est pas valide pour la base de données active.

  • Autorisation insuffisante pour la table spécifiée par l'ID d'objet.

Exemples

L'exemple suivant détermine si la version spécifiée est valide. L'exemple obtient la version valide minimale de la table dbo.Employees, puis la compare à la valeur de la variable @last\_sync\_version. Si la valeur de @last\_sync\_version est inférieure à la valeur de @min\_valid\_version, la liste des lignes modifiées n'est pas valide.

[!REMARQUE]

Généralement, vous pouvez obtenir la valeur à partir d'une table ou d'un autre emplacement dans lequel vous avez stocké le dernier numéro de version utilisé pour synchroniser les données.

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