다음을 통해 공유


catalog.add_data_tap

적용 대상: Azure Data Factory의 SQL Server SSIS Integration Runtime

적용 대상: SQL Server

실행 패키지에 대한 패키지 데이터 흐름에서 구성 요소 출력에 데이터 탭을 추가합니다.

구문

catalog.add_data_tap [ @execution_id = ] execution_id  
, [ @task_package_path = ] task_package_path  
, [ @dataflow_path_id_string = ] dataflow_path_id_string  
, [ @data_filename = ] data_filename  
, [ @max_rows = ] max_rows  
, [ @data_tap_id = ] data_tap_id OUTPUT  

인수

[ @execution_id = ] execution_id
패키지를 포함하는 실행에 대한 실행 ID입니다. execution_id 큰 것입니다.

[ @task_package_path = ] task_package_path
데이터 흐름 태스크의 패키지 경로입니다. 데이터 흐름 태스크에 대한 PackagePath 속성에서 이 경로를 지정합니다. 경로는 대/소문자를 구분합니다. 패키지 경로를 찾으려면 SQL Server Data Tools에서 데이터 흐름 태스크를 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다. 속성 창에 PackagePath 속성나타납니다.

task_package_path nvarchar(max)입니다.

[ @dataflow_path_id_string = ] dataflow_path_id_string
데이터 흐름 경로에 대한 식별 문자열입니다. 경로는 두 개의 데이터 흐름 구성 요소를 연결합니다. 경로의 IdentificationString 속성은 문자열을 지정합니다.

식별 문자열을 찾으려면 SQL Server Data Tools에서 두 데이터 흐름 구성 요소 사이의 경로를 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다. Properties 창에 IdentificationString 속성나타납니다.

dataflow_path_id_stringnvarchar(4000)입니다.

[ @data_filename = ] data_filename
탭 데이터를 저장하는 파일의 이름입니다. 데이터 흐름 태스크가 Foreach 루프 또는 For 루프 컨테이너 내에서 실행되는 경우 별도의 파일은 루프의 각 반복에 대해 탭된 데이터를 저장합니다. 각 파일에는 반복에 해당하는 숫자가 접두사로 지정됩니다.

파일은 기본적으로 <드라이브>:\Program Files\Microsoft SQL Server\130\DTS\DataDumps 폴더에 저장됩니다.

data_filename nvarchar(4000)입니다.

[ @max_rows = ] max_rows
데이터 탭 중에 캡처되는 행 수입니다. 이 값을 지정하지 않으면 모든 행이 캡처됩니다. max_rows int입니다.

[ @data_tap_id = ] data_tap_id
데이터 탭의 ID를 반환합니다. data_tap_idbigint입니다.

예시

다음 예제에서는 데이터 흐름 경로 'Paths[OLE DB Source.OLE DB Source Output], 즉 데이터 흐름 태스크 \Package\Data Flow Task에서 데이터 탭을 만듭니다. 탭 데이터는 DataDumps 폴더(<드라이브>:\Program Files\Microsoft SQL Server\130\DTS\DataDumps)의 output0.txt 파일에 저장됩니다.

Declare @execution_id bigint  
Exec SSISDB.Catalog.create_execution @folder_name='Packages',@project_name='SSISPackages', @package_name='Package.dtsx',@reference_id=Null, @use32bitruntime=False, @execution_id=@execution_id OUTPUT  
  
Exec SSISDB.Catalog.set_execution_parameter_value @execution_id,50, 'LOGGING_LEVEL', 0  
  
Exec SSISDB.Catalog.add_data_tap @execution_id, @task_package_path='\Package\Data Flow Task', @dataflow_path_id_string = 'Paths[OLE DB Source.OLE DB Source Output]', @data_filename = 'output0.txt'  
  
Exec SSISDB.Catalog.start_execution @execution_id  

설명

데이터 탭을 추가하려면 실행 인스턴스가 생성된 상태여야 합니다(catalog.operations(SSISDB 데이터베이스) 뷰의 상태 열에 있는 값 1). 실행을 실행하면 상태 값이 변경됩니다. catalog.create_execution(SSISDB 데이터베이스)을 호출하여 실행을 만들 수 있습니다.

다음은 add_data_tap 저장 프로시저에 대한 고려 사항입니다.

  • 실행에 부모 패키지와 하나 이상의 자식 패키지가 포함된 경우 데이터를 탭하려는 각 패키지에 대한 데이터 탭을 추가해야 합니다.

  • 패키지에 이름이 같은 데이터 흐름 태스크가 둘 이상 포함된 경우 task_package_path 탭되는 구성 요소 출력을 포함하는 데이터 흐름 태스크를 고유하게 식별합니다.

  • 데이터 탭을 추가하면 패키지가 실행되기 전에 유효성이 검사되지 않습니다.

  • 데이터 탭 도중에 캡처되는 행 수를 제한하여 대용량 데이터 파일이 생성되지 않도록 하는 것이 좋습니다. 저장 프로시저가 실행되는 컴퓨터에서 데이터 파일에 대한 스토리지 공간이 부족하면 패키지 실행이 중지되고 오류 메시지가 로그에 기록됩니다.

  • add_data_tap 저장 프로시저를 실행하면 패키지의 성능에 영향을 미칩니다. 저장 프로시저를 실행하여 데이터 문제를 해결하는 것이 좋습니다.

  • 탭된 데이터를 저장하는 파일에 액세스하려면 저장 프로시저가 실행되는 컴퓨터의 관리자여야 합니다. 또한 데이터 탭을 사용하여 패키지를 포함하는 실행을 시작한 사용자여야 합니다.

반환 코드

0(성공)

저장 프로시저가 실패하면 오류를 반환합니다.

결과 집합

None

사용 권한

이 저장 프로시저를 실행하려면 다음 권한 중 하나가 필요합니다.

  • 실행 인스턴스에 대한 MODIFY 권한

  • ssis_admin 데이터베이스 역할의 멤버 자격

  • sysadmin 서버 역할에 대한 멤버 자격

오류 및 경고

다음 목록에서는 저장 프로시저 실패 조건을 설명합니다.

  • 사용자에게 MODIFY 권한이 없습니다.

  • 지정된 패키지에 지정된 구성 요소에 대한 데이터 탭이 이미 추가되었습니다.

  • 캡처할 행 수에 지정된 값이 잘못되었습니다.

요구 사항

외부 리소스

블로그 항목, SSIS 2012: rafael-salas.com 데이터 탭 미리 보기

참고 항목

catalog.add_data_tap_by_guid