CHANGE_TRACKING_IS_COLUMN_IN_MASK (Transact-SQL)
CHANGETABLE(CHANGES ...) 関数によって返される SYS_CHANGE_COLUMNS 値を解釈します。 これにより、指定した列が SYS_CHANGE_COLUMNS に返された値に含まれているかどうかを、アプリケーションで判断することができます。
構文
CHANGE_TRACKING_IS_COLUMN_IN_MASK ( column_id , change_columns )
引数
column_id
チェックする列の ID です。 列の ID は、COLUMNPROPERTY 関数を使用して取得できます。change_columns
CHANGETABLE データの SYS_CHANGE_COLUMNS 列のバイナリ データです。
戻り値の型
bit
戻り値
CHANGE_TRACKING_IS_COLUMN_IN_MASK は次の値を返します。
戻り値 |
説明 |
---|---|
0 |
指定した列は、change_columns リストに含まれていません。 |
1 |
指定した列は、change_columns リストに含まれています。 |
説明
CHANGE_TRACKING_IS_COLUMN_IN_MASK では、column_id の値を検証するためのチェックや、change_columns パラメーターが column_id の取得元のテーブルから取得されたことを確認するためのチェックは実行されません。
使用例
次の例では、Employees テーブルの Salary 列が更新済みかどうかを確認します。 COLUMNPROPERTY 関数は、Salary 列の列 ID を返します。 @change\_columns ローカル変数には、CHANGETABLE をデータ ソースとするクエリの結果を設定する必要があります。
SET @SalaryChanged = CHANGE_TRACKING_IS_COLUMN_IN_MASK
(COLUMNPROPERTY(OBJECT_ID('Employees'), 'Salary', 'ColumnId')
,@change_columns);