다음을 통해 공유


구문(SSIS)

Integration Services 식 구문은 C 및 C# 언어에서 사용하는 구문과 유사합니다. 식에는 식별자(열 및 변수), 리터럴, 연산자 및 함수와 같은 요소가 포함됩니다. 이 항목에서는 식 계산기 구문이 다른 식 요소에 적용될 때의 고유한 요구 사항을 요약합니다.

비고

Integration Services의 이전 릴리스에서는 결과에 Integration Services 데이터 형식이 DT_WSTR 또는 DT_STR 경우 식의 평가 결과에 4,000자 제한이 있었습니다. 이 제한이 제거되었습니다.

특정 연산자와 함수를 사용하는 샘플 식은 항목의 각 연산자 및 함수에 대한 항목을 참조하세요. 연산자(SSIS 식)함수(SSIS 식).

식별자 및 리터럴뿐만 아니라 여러 연산자와 함수를 사용하는 샘플 식은 고급 Integration Services 식의 예제를 참조하세요.

속성 식에 사용할 샘플 식은 패키지에서 속성 식 사용을 참조하세요.

식별자

식에는 열 및 변수 식별자가 포함될 수 있습니다. 열은 데이터 원본에서 시작되거나 데이터 흐름의 변환에 의해 생성될 수 있습니다. 표현식은 계보 식별자를 사용하여 열을 참조할 수 있습니다. 계보 식별자는 패키지 요소를 고유하게 식별하는 숫자입니다. 표현식에서 참조되는 계보 식별자는 파운드 기호(#)를 포함해야 합니다. 예를 들어 계보 식별자 138은 #138을 사용하여 참조됩니다.

식에는 SSIS에서 제공하는 시스템 변수와 사용자 지정 변수가 포함될 수 있습니다. 식에서 참조되는 변수에는 @ 접두사를 포함해야 합니다. 예를 들어 변수는 Counter @Counter 사용하여 참조됩니다. @ 문자는 변수 이름의 일부가 아닙니다. 식 계산기에서 식별자가 변수임을 나타내기만 합니다. 자세한 내용은 SSIS(식별자)를 참조하세요.

리터럴 (프로그래밍 등에서 사용하는 정해진 값)

식에는 숫자, 문자열 및 부울 리터럴이 포함될 수 있습니다. 식에 사용되는 문자열 리터럴은 따옴표로 묶어야 합니다. 숫자 및 부울 리터럴은 따옴표를 사용하지 않습니다. 표현식 언어에는 자주 이스케이프되는 문자를 위한 이스케이프 시퀀스가 포함됩니다. 자세한 내용은 리터럴(SSIS)을 참조하세요.

운영자

식 계산기는 Transact-SQL, C++, C#과 같은 언어의 연산자 집합과 유사한 기능을 제공하는 연산자 집합을 제공합니다. 그러나 식 언어는 추가 연산자를 포함하며 익숙한 기호와 다른 기호를 사용합니다. 자세한 내용은 연산자(SSIS 식)를 참조하세요.

네임스페이스 해석 연산자

식은 네임스페이스 확인 연산자(::)를 사용하여 이름이 같은 변수를 구분합니다. 네임스페이스 확인 연산자를 사용하면 해당 네임스페이스로 변수를 한정할 수 있으므로 패키지에서 동일한 이름의 여러 변수를 사용할 수 있습니다.

캐스트 연산자

캐스트 연산자는 식 결과, 열 값, 변수 값 및 상수를 한 데이터 형식에서 다른 데이터 형식으로 변환합니다. 식 언어에서 제공하는 캐스트 연산자는 C 및 C# 언어에서 제공하는 연산자와 비슷합니다. Transact-SQL에서 CAST 및 CONVERT 함수는 이 기능을 제공합니다. 캐스트 연산자의 구문은 다음과 같은 방법으로 CAST 및 CONVERT에서 사용하는 구문과 다릅니다.

  • 식을 인수로 사용할 수 있습니다.

  • 해당 구문에는 CAST 키워드가 포함되지 않습니다.

  • 해당 구문에는 AS 키워드가 포함되지 않습니다.

조건부 연산자

조건부 연산자는 부울 식의 계산에 따라 두 식 중 하나를 반환합니다. 식 언어에서 제공하는 조건부 연산자는 C 및 C# 언어에서 제공하는 조건부 연산자와 비슷합니다. MDX(다차원 식)에서 IIF 함수는 비슷한 기능을 제공합니다.

논리 연산자

식 표현 언어는 특정 기능을 지원합니다. 논리 NOT 연산자의 문자입니다. Transact-SQL에서 ! 연산자는 관계형 연산자 집합에 내장되어 있습니다. 예를 들어 Transact-SQL는 > 및 !> 연산자를 제공합니다. SSIS 식 언어는 !의 조합을 지원하지 않습니다. 연산자와 다른 연산자들. 예를 들어 결합하는 것은 유효하지 않습니다! 그리고 >를 !>로 변경합니다. 그러나 표현 언어는 같지 않다는 비교를 위한 내장된 문자 조합 ‘!=’을 지원합니다.

동등 연산자

식 계산기 문법은 == 같음 연산자를 제공합니다. 이 연산자는 Transact-SQL = 연산자 및 C#의 == 연산자와 동일합니다.

기능

식 언어에는 날짜 및 시간 함수, 수학 함수 및 Transact-SQL 함수 및 C# 메서드와 유사한 문자열 함수가 포함됩니다.

일부 함수는 Transact-SQL 함수와 이름이 같지만 식 계산기에서는 기능이 미묘하게 다릅니다.

  • Transact-SQL에서 ISNULL 함수는 null 값을 지정된 값으로 바꾸는 반면, 표현식 평가기 ISNULL 함수는 식이 null인지 여부에 따라 부울 값을 반환합니다.

  • Transact-SQL에서 ROUND 함수에는 결과 집합을 자르는 옵션이 포함되지만 식 계산기 ROUND 함수는 그렇지 않습니다.

자세한 내용은 Functions(SSIS 식)를 참조하세요.

데이터 흐름 구성 요소에서 식 사용