sys.fn_cdc_get_column_ordinal (języka Transact-SQL)
Zwraca wartość porządkową kolumna określonej kolumna pojawi się w zmian w tabela skojarzone z określonym przechwytywania wystąpienie.
Składnia
sys.fn_cdc_get_column_ordinal ( 'capture_instance','column_name')
Argumenty
'capture_instance'
Jest nazwą przechwytywania wystąpienie , w którym określona kolumna jest identyfikowany jako przechwyconych kolumna.capture_instanceis sysname.'column_name'
Znajduje się na kolumna raportu.column_nameis sysname.
Zwracany typ
int
Uwagi
Ta funkcja służy do identyfikowania pozycji porządkowej przechwyconych kolumna w obrębie maski aktualizacji przechwytywania danych zmian.Jest głównie używany w połączeniu z funkcja sys.fn_cdc_is_bit_set do wyodrębnić informacji z maski aktualizacji podczas badania zmiany danych.
Uprawnienia
Wymaga uprawnienie SELECT wszystkich przechwyconych kolumntabela źródło. rola bazy danych dla składnika Przechwytywanie danych zmiana określono przechwytywania wystąpienie, członkostwo w danej roli jest również wymagane.
Przykłady
Poniższy przykład pobiera pozycji porządkowej VacationHours kolumna w masce aktualizacji dla HumanResources_Employee Przechwytywanie wystąpienie.Czy wartość jest następnie używana w wywołaniu sys.fn_cdc_is_bit_set do wyodrębnić informacji z zwrócone aktualizacji maski.
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