다음을 통해 공유


sys.fn_cdc_has_column_changed(Transact-SQL)

적용 대상: SQL Server

지정된 업데이트 마스크가 연결된 변경 행에서 지정된 열이 업데이트되었음을 나타내는지 여부를 식별합니다.

Transact-SQL 구문 표기 규칙

구문

  
sys.fn_cdc_has_column_changed ( 'capture_instance','column_name' , update_mask )  

인수

' capture_instance '
캡처 인스턴스의 이름입니다. capture_instance sysname입니다.

' column_name '
보고할 지정된 캡처 인스턴스의 캡처된 열입니다. column_name sysname입니다.

update_mask
연결된 변경 행에서 업데이트된 열을 식별하는 마스크입니다. update_mask varbinary(128)입니다.

반환 형식

bit

설명

이 함수를 사용하여 변경 데이터에 대한 쿼리에서 반환된 업데이트 마스크에서 정보를 추출할 수 있습니다. 연결된 변경 행의 특정 열이 수정되었는지 여부를 알아야 하는 경우 업데이트 마스크를 사후 처리할 때 가장 유용합니다. 자세한 내용은 변경 데이터 캡처 정보(SQL Server)를 참조하세요.

이 정보가 변경 데이터 쿼리의 일부로 반환되는 경우 이 함수 대신 sys.fn_cdc_get_column_ordinal 함수 sys.fn_cdc_is_bit_set 사용하는 것이 좋습니다. 원하는 열 서수가 한 번만 계산되도록 변경 데이터를 쿼리하기 전에 함수 fn_cdc_get_column_ordinal 사용합니다. 반환된 각 행의 업데이트 마스크에서 정보를 추출하려면 이 쿼리 내에서 fn_cdc_is_bit_set을 사용합니다.

사용 권한

sysadmin 고정 서버 역할 또는 db_owner 고정 데이터베이스 역할의 멤버 자격이 필요합니다. 다른 모든 사용자의 경우 원본 테이블의 모든 캡처된 열에 대해 SELECT 권한이 필요하며 캡처 인스턴스에 대한 게이팅 역할이 정의된 경우 해당 데이터베이스 역할의 멤버 자격이 필요합니다.

참고 항목

CDC.<>capture_instance_CT(Transact-SQL)
cdc.captured_columns(Transact-SQL)