CHANGE_TRACKING_IS_COLUMN_IN_MASK (Transact-SQL)

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例

解释 CHANGETABLE (CHANGES ...) 函数返回的SYS_CHANGE_COLUMNS值。 这使应用程序能够确定指定的列是否包含在为 SYS_CHANGE_COLUMNS 返回的值中。

Transact-SQL 语法约定

语法

  
CHANGE_TRACKING_IS_COLUMN_IN_MASK ( column_id , change_columns )  

参数

column_id
是正在被检查的列的 ID。 可以使用 COLUMNPROPERTY 函数获取列 ID。

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值,也不会从获取column_id的表中获取change_columns参数。

示例

下面的示例确定是否已更新 Salary 表的 Employees 列。 函数 COLUMNPROPERTY 返回列的 Salary 列 ID。 必须使用 CHANGETABLE 作为数据源将 @change_columns 局部变量设置为查询的结果。

SET @SalaryChanged = CHANGE_TRACKING_IS_COLUMN_IN_MASK  
    (COLUMNPROPERTY(OBJECT_ID('Employees'), 'Salary', 'ColumnId')  
    ,@change_columns);  

另请参阅

更改跟踪函数 (Transact-SQL)
CHANGETABLE (Transact-SQL)
跟踪数据更改 (SQL Server)