WITH CHANGE_TRACKING_CONTEXT (Transact-SQL)

在更改数据时允许指定更改的上下文,如发起方 ID。 例如,使用更改跟踪时,应用程序可能需要区分应用程序自身所做的更改和对应用程序外部的数据所做的更改。

主题链接图标Transact-SQL 语法约定

语法

WITH CHANGE_TRACKING_CONTEXT ( context )

参数

  • context
    由执行调用的应用程序提供且与更改的更改跟踪信息存储在一起的上下文信息。context 的数据类型为 varbinary(128)。

    该值可以为常量或变量,但不能为 NULL。

示例

下面的示例设置一项数据更改的更改跟踪上下文。

-- The tracked change is tagged with the specified context 
DECLARE @originator_id varbinary(128);
SET @originator_id = CAST('MyApplicationID' AS varbinary(128));
WITH CHANGE_TRACKING_CONTEXT (@originator_id)
    UPDATE Employees
      SET Salary = 50000
      WHERE EmpID = 1 
-- The change now has an associated change context
SELECT c.EmpID, c.SYS_CHANGE_CONTEXT 
FROM CHANGETABLE(CHANGES Employees, @last_sync_version) AS c;