CHANGE_TRACKING_MIN_VALID_VERSION (Transact-sql)CHANGE_TRACKING_MIN_VALID_VERSION (Transact-SQL)

適用対象:Applies to: はいSQL ServerSQL Server (サポートされているすべてのバージョン) yesSQL ServerSQL Server (all supported versions) はいAzure SQL データベースAzure SQL DatabaseYesAzure SQL データベースAzure SQL Database適用対象:Applies to: はいSQL ServerSQL Server (サポートされているすべてのバージョン) yesSQL ServerSQL Server (all supported versions) はいAzure SQL データベースAzure SQL DatabaseYesAzure SQL データベースAzure SQL Database

CHANGETABLE関数を使用するときに、指定したテーブルから変更追跡情報を取得するために有効な、クライアントの最小バージョンを返します。Returns the minimum version on the client that is valid for use in obtaining change tracking information from the specified table, when you are using the CHANGETABLE function.

トピック リンク アイコン Transact-SQL 構文表記規則Topic link icon Transact-SQL Syntax Conventions

構文Syntax

  
CHANGE_TRACKING_MIN_VALID_VERSION ( table_object_id )  

引数Arguments

table_object_idtable_object_id
テーブルのオブジェクト ID を示します。Is the object ID of the table. table_object_idintです。table_object_id is an int.

戻り値の型Return Type

bigintbigint

解説Remarks

この関数を使用して、CHANGETABLE の last_sync_version パラメーターの値を検証します。Use this function to validate the value of the last_sync_version parameter for CHANGETABLE. Last_sync_versionがこの関数によって報告された値より小さい場合は、CHANGETABLE への後の呼び出しで返される結果が有効でない可能性があります。If last_sync_version is less than the value that is reported by this function, the results that are returned from a later call to CHANGETABLE might not be valid.

CHANGE_TRACKING_MIN_VALID_VERSION では、次の情報を使用して戻り値を決定します。CHANGE_TRACKING_MIN_VALID_VERSION uses the following information to determine the return value:

  • テーブルで変更の追跡が有効にされたとき。When the table was enabled for change tracking.

  • バックグラウンド クリーンアップ タスクを実行して、データベースに対して指定した保持期間より古い変更追跡情報を削除した日時。When the background cleanup task ran to remove change tracking information older than the retention period specified for the database.

  • テーブルが切り捨てられた場合はです。If the table was truncated. これにより、テーブルに関連付けられている変更追跡情報がすべて削除されます。This removes all change tracking information that is associated with the table.

次のいずれかの条件に該当する場合、この関数は NULL を返します。The function returns NULL if any one of the following conditions is true:

  • データベースで変更の追跡が有効になっていない。Change tracking is not enabled for the database.

  • 指定されたテーブル オブジェクト ID が現在のデータベースで有効でない。The specified table object ID is not valid for the current database.

  • オブジェクト ID で指定されたテーブルに対する十分な権限がない。Insufficient permission to the table specified by the object ID.

Examples

次の例では、指定されたバージョンが有効なバージョンであるかどうかを判断します。The following example determines whether a specified version is a valid version. この例では、テーブルの有効な最小バージョンを取得 dbo.Employees し、これを変数の値と比較し @last_sync_version ます。The example obtains the minimum valid version of the dbo.Employees table, and then compares this to the value of the @last_sync_version variable. @last_sync_version の値が @min_valid_version の値より小さい場合、変更された行の一覧は有効ではありません。If the value of @last_sync_version is lower than the value of @min_valid_version, the list of changed rows will not be valid.

注意

通常は、データの同期に使用された最新のバージョン番号が格納されているテーブルまたはその他の場所から値を取得します。You would usually obtain the value from a table or other location where you stored the last version number that was used to synchronize data.

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

参照See Also

変更追跡関数 (Transact-SQL) Change Tracking Functions (Transact-SQL)
sys.change_tracking_tables (Transact-SQL)sys.change_tracking_tables (Transact-SQL)