CHANGE_TRACKING_MIN_VALID_VERSION (Transact-SQL)
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance
Gibt die Mindestversion des Clients zurück, die für die Verwendung beim Abrufen von Änderungsnachverfolgungsinformationen aus der angegebenen Tabelle gültig ist, wenn Sie die CHANGETABLE-Funktion verwenden.
Transact-SQL-Syntaxkonventionen
Syntax
CHANGE_TRACKING_MIN_VALID_VERSION ( table_object_id )
Argumente
table_object_id
Ist die Objekt-ID der Tabelle. table_object_id ist ein Int.
Rückgabetyp
bigint
Hinweise
Verwenden Sie diese Funktion, um den Wert des last_sync_version-Parameters für CHANGETABLE zu überprüfen. Wenn last_sync_version kleiner als der von dieser Funktion gemeldete Wert ist, sind die Ergebnisse, die von einem späteren Aufruf von CHANGETABLE zurückgegeben werden, möglicherweise ungültig.
CHANGE_TRACKING_MIN_VALID_VERSION verwendet die folgenden Informationen, um den Rückgabewert zu bestimmen:
Wenn für die Tabelle die Änderungsnachverfolgung aktiviert ist.
Wenn der Cleanuptask im Hintergrund ausgeführt wurde, um Änderungsnachverfolgungsinformationen zu entfernen, die älter als die für die Datenbank angegebene Beibehaltungsdauer sind.
Wenn die Tabelle abgeschnitten wurde, werden alle Änderungsnachverfolgungsinformationen entfernt, die der Tabelle zugeordnet sind.
Die Funktion gibt einen NULL-Fehler zurück, wenn eine der folgenden Bedingungen zutrifft:
Die Änderungsnachverfolgung ist für die Datenbank nicht aktiviert.
Die angegebene Tabellenobjekt-ID ist für die aktuelle Datenbank ungültig.
Es sind keine ausreichenden Berechtigungen für die von der Objekt-ID angegebene Tabelle vorhanden.
Beispiele
Im folgenden Beispiel wird ermittelt, ob eine angegebene Version eine gültige Version ist. In diesem Beispiel wird die minimal gültige Version für die Tabelle dbo.Employees
abgerufen, und dieser Wert wird mit dem Wert der Variable @last_sync_version
verglichen. Wenn der Wert niedriger als der Wert @last_sync_version
von @min_valid_version
ist, ist die Liste der geänderten Zeilen ungültig.
Hinweis
Normalerweise wird der Wert aus einer Tabelle oder aus einem anderen Speicherort abgerufen, in der bzw. in dem die letzte Versionsnummer gespeichert wurde, die zum Synchronisieren von Daten verwendet wurde.
-- 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 ...)
Siehe auch
Änderungsnachverfolgungs-Funktionen (Transact-SQL)
sys.change_tracking_tables (Transact-SQL)