>데이터 베이스 >MySQL 튜토리얼 >동적 SQL에 대한 SQL 실행 작업에 SSIS 변수를 매개 변수로 전달하는 방법은 무엇입니까?

동적 SQL에 대한 SQL 실행 작업에 SSIS 변수를 매개 변수로 전달하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2025-01-06 18:17:43842검색

How to Pass SSIS Variables as Parameters to an Execute SQL Task for Dynamic SQL?

SSIS의 SQL 실행 작업에서 변수를 매개 변수로 전달

동적 SQL 작업을 실행하려면 쿼리를 더욱 다양하게 만들기 위해 변수를 매개 변수로 전달해야 하는 경우가 많습니다. SSIS 패키지에서는 SQL 실행 작업의 임시 테이블 생성 쿼리에 외부 값을 전달해야 할 때 이러한 시나리오가 발생합니다.

질문:

고려하세요. 플랫 파일의 데이터가 테이블에 삽입되는 SSIS 패키지입니다. 이 패키지 내에서는 SQL 실행 작업을 사용하여 특정 열이 포함된 ##temptable이라는 임시 테이블을 생성합니다. 이후 특정 필터 기준에 따라 ##temptable에 데이터가 삽입됩니다. 요구 사항은 SSIS 패키지 내에서 생성된 변수를 사용하여 이러한 필터 기준을 동적으로 전달하는 것입니다.

해결책:

동적 매개 변수 전달을 달성하려면 SQL 실행 작업을 다음과 같이 구성하세요. :

  1. SQLSourceType을 "직접 입력"으로 설정합니다.
  2. SQL에서 명령문에서 각 매개변수에 대한 물음표와 함께 저장 프로시저 이름을 지정합니다. 예:
CREATE PROCEDURE [dbo].[usp_temptable]
(
    @date DATETIME,
    @portfolioId INT,
    @stype NVARCHAR(50)
)
AS
BEGIN
    INSERT INTO [tempdb].dbo.##temptable (date, companyname, price, PortfolioId, stype)
    SELECT   date, companyname, price, PortfolioId, stype
    FROM        ProgressNAV
    WHERE     (Date = @date) AND (PortfolioId = @portfolioId) AND (stype in (@stype))
    ORDER BY CompanyName
END
  1. 매개변수 매핑 옵션을 클릭하고 각 저장 프로시저 매개변수와 해당 SSIS 변수.
  2. 작업 실행 중에 저장 프로시저에 전달될 원하는 값으로 SSIS 변수를 구성합니다.

위 내용은 동적 SQL에 대한 SQL 실행 작업에 SSIS 변수를 매개 변수로 전달하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.