다음을 통해 공유


sys.sp_cdc_help_change_data_capture(Transact-SQL)

현재 데이터베이스에서 변경 데이터 캡처가 활성화된 각 테이블에 대한 변경 데이터 캡처 구성을 반환합니다. 각 원본 테이블당 최대 두 개의 열, 각 캡처 인스턴스당 한 개의 열을 반환할 수 있습니다. 변경 데이터 캡처는 일부 Microsoft SQL Server 버전에서 사용할 수 없습니다. SQL Server 버전에서 지원하는 기능 목록을 보려면 SQL Server 2014 버전에서 지원하는 기능을 참조하십시오.

적용 대상: SQL Server(SQL Server 2008 - 현재 버전).

항목 링크 아이콘 Transact-SQL 구문 표기 규칙

구문

sys.sp_cdc_help_change_data_capture 
  [ [ @source_schema = ] 'source_schema' ]
  [, [ @source_name = ] 'source_name' ]

인수

  • [ @source\_schema = ] 'source_schema'
    원본 테이블이 속한 스키마의 이름입니다. source_schema는 sysname이며 기본값은 NULL입니다. source_schema가 지정된 경우 source_name도 지정되어야 합니다.

    NULL이 아닌 경우 source_schema는 현재 데이터베이스에 있어야 합니다.

    source_schema가 NULL이 아니면 source_name도 NULL이 아니어야 합니다.

  • [ @source\_name = ] 'source_name'
    원본 테이블의 이름입니다. source_name은 sysname이며 기본값은 NULL입니다. source_name이 지정된 경우 source_schema도 지정되어야 합니다.

    NULL이 아닌 경우 source_name은 현재 데이터베이스에 있어야 합니다.

    source_name이 NULL이 아니면 source_schema도 NULL이 아니어야 합니다.

반환 코드 값

0(성공) 또는 1(실패)

결과 집합

열 이름

데이터 형식

설명

source_schema

sysname

원본 테이블 스키마의 이름입니다.

source_table

sysname

원본 테이블의 이름입니다.

capture_instance

sysname

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

object_id

int

원본 테이블과 관련된 변경 테이블의 ID입니다.

source_object_id

int

원본 테이블의 ID입니다.

start_lsn

binary(10)

변경 테이블 쿼리의 하위 끝점을 나타내는 LSN(로그 시퀀스 번호)입니다.

NULL = 하위 끝점이 설정되지 않았습니다.

end_lsn

binary(10)

변경 테이블 쿼리의 상위 끝점을 나타내는 LSN입니다. SQL Server 2012에서 이 열은 항상 NULL입니다.

supports_net_changes

bit

순 변경 지원이 활성화됩니다.

has_drop_pending

bit

SQL Server 2012에서는 사용되지 않습니다.

role_name

sysname

변경 데이터에 대한 액세스를 제어하는 데 사용되는 데이터베이스 역할의 이름입니다.

NULL = 역할이 사용되지 않습니다.

index_name

sysname

원본 테이블의 행을 고유하게 식별하는 데 사용되는 인덱스 이름입니다.

filegroup_name

sysname

변경 테이블이 있는 파일 그룹의 이름입니다.

NULL = 변경 테이블이 데이터베이스의 기본 파일 그룹에 있습니다.

create_date

datetime

캡처 인스턴스가 활성화된 날짜입니다.

index_column_list

nvarchar(max)

원본 테이블의 행을 고유하게 식별하는 데 사용되는 인덱스 열의 목록입니다.

captured_column_list

nvarchar(max)

캡처된 원본 열 목록입니다.

주의

source_schema와 source_name이 둘 다 기본적으로 또는 명시적으로 NULL로 설정되면 이 저장 프로시저는 호출자가 SELECT 액세스 권한을 가지고 있는 모든 데이터베이스 캡처 인스턴스에 대한 정보를 반환합니다. source_schema와 source_name이 NULL이 아니면 설정된 특정 이름의 테이블에 대한 정보만 반환됩니다.

사용 권한

source_schema와 source_name이 NULL이면 호출자의 권한에 따라 결과 집합에 포함되는 설정된 테이블이 결정됩니다. 호출자는 캡처 인스턴스의 모든 캡처된 열에 대해 SELECT 권한을 가지고 있어야 하며 포함할 테이블 정보에 대해 정의된 제어 역할의 멤버여야 합니다. db_owner 데이터베이스 역할의 멤버는 정의된 모든 캡처 인스턴스에 대한 정보를 볼 수 있습니다. 설정된 특정 테이블에 대한 정보가 요청되면 동일한 SELECT 및 멤버 자격 조건이 명명된 테이블에 적용됩니다.

1.지정된 테이블에 대한 변경 데이터 캡처 구성 정보 반환

다음 예에서는 HumanResources.Employee 테이블에 대한 변경 데이터 캡처 구성을 반환합니다.

USE AdventureWorks2012;
GO
EXECUTE sys.sp_cdc_help_change_data_capture 
    @source_schema = N'HumanResources', 
    @source_name = N'Employee';
GO

2.모든 테이블에 대한 변경 데이터 캡처 구성 정보 반환

다음 예에서는 호출자에게 액세스 권한이 부여된 변경 데이터가 포함된 데이터베이스에서 사용하도록 설정된 모든 테이블에 대한 구성 정보를 반환합니다.

USE AdventureWorks2012;
GO
EXECUTE sys.sp_cdc_help_change_data_capture;
GO