sys.fn_cdc_get_column_ordinal (Transact-SQL)
傳回指定資料行在變更資料表 (與指定的擷取執行個體相關聯) 中顯示的資料行序數。
語法
sys.fn_cdc_get_column_ordinal ( 'capture_instance','column_name')
引數
'capture_instance'
這是指定資料行識別成擷取資料行之擷取執行個體的名稱。capture_instance 是 sysname。'column_name'
這是要回報的資料行。column_name 是 sysname。
傳回類型
int
權限
需要來源資料表之所有擷取資料行的 SELECT 權限。如果已針對擷取執行個體指定了異動資料擷取元件的資料庫角色,也會需要該角色的成員資格。
範例
下列範例會取得 VacationHours 資料行在 HumanResources_Employee 擷取執行個體之更新遮罩中的序數位置。然後,該值會用於 sys.fn_cdc_is_bit_set 的呼叫中,以便從傳回的更新遮罩中擷取資訊。
USE AdventureWorks2008R2;
GO
DECLARE @VacationHoursOrdinal int;
SET @VacationHoursOrdinal =
sys.fn_cdc_get_column_ordinal ( 'HumanResources_Employee','VacationHours');
SELECT sys.fn_cdc_is_bit_set(@VacationHoursOrdinal, __$update_mask)
as 'VacationHoursChanged', *
FROM cdc.fn_get_net_changes_HumanResources_Employee
(@from_lsn, @to_lsn, 'all with mask');
GO