리터럴(SSIS)

식은 숫자, 문자열 및 부울 리터럴을 포함할 수 있습니다. 식 계산기는 정수, 10진수 및 부동 소수점 상수와 같은 다양한 숫자 리터럴을 지원합니다. 또한 식 계산기의 값 처리 방법을 지정하는 long 및 float 접미사와 숫자 리터럴의 과학적 표기법을 지원합니다.

숫자 리터럴

식 계산기는 정수 및 비정수 숫자 데이터 형식을 지원합니다. 또한 패키지 요소의 고유 숫자 식별자인 계보 식별자를 지원합니다. 계보 식별자는 숫자이지만 수치 연산에 사용할 수 없습니다.

식 계산기는 식 계산기의 숫자 리터럴 처리 방법을 나타내는 데 사용할 수 있는 접미사를 지원합니다. 예를 들어 37L 또는 37l을 써서 정수 37이 정수(Long)로 처리되도록 나타낼 수 있습니다.

다음 표에서는 숫자 리터럴의 접미사를 보여 줍니다.

접미사

설명

L 또는 l

숫자 리터럴(Long)

U 또는 u

부호 없는 숫자 리터럴

E 또는 e

과학적 표기법의 지수

다음 표에서는 숫자 식 요소와 해당 정규식을 나열합니다.

식 요소

정규식

설명

D로 표현된 자릿수

[0-9]

모든 자릿수

E로 표현된 과학적 표기법

[Ee][+-]?{D}+

대문자 또는 소문자 e, 선택적 + 또는 -, D로 정의된 하나 이상의 자릿수

IS로 표현된 정수 접미사

(([lL]?[uU]?)|([uU]?[lL]?))

대문자 또는 소문자 u와 l 또는 u와 l의 모든 조합(옵션). U 또는 u는 부호 없는 값을 나타냅니다. L 또는 l은 Long 값을 나타냅니다.

FS로 표현된 부동 접미사

([f|F]|[l|L])

f 또는 l의 대문자 또는 소문자. F 또는 f는 float 값(DT_R4 데이터 형식)을 나타냅니다. L 또는 l은 Long 값(DT_R8 데이터 형식)을 나타냅니다.

H로 표현된 16진수

[a-fA-F0-9]

모든 16진수

다음 표에서는 정규식 언어를 사용한 유효한 숫자 리터럴을 설명합니다.

정규식

설명

{D}+{IS}

한 자릿수 이상의 정수 숫자 리터럴(D) 및 선택적인 Long 및/또는 부호 없는 접미사(IS). 예를 들어 457, 785u, 986L, 7945ul입니다.

{D}+{E}{FS}

한 자릿수 이상의 비정수 숫자 리터럴(D), 과학적 표기법 및 Long 또는 float 접미사. 예를 들어 4E8l, 13e-2f, 5E+L입니다.

{D}*"."{D}+{E}?{FS}

소수 자릿수가 있는 비정수 숫자 리터럴, 한 자릿수 이상의 소수 부분, 선택적 지수(E) 및 한 개의 float 또는 한 개의 Long 식별자(FS). 이 숫자 리터럴은 DT_R4 또는 DT_R8 데이터 형식을 갖습니다. 예를 들어 6.45E3f, .89E-2l, 1.05E+7F입니다.

{D}+"."{D}*{E}?{FS}

한 자릿수 이상의 유효 자릿수가 있는 비정수 숫자 리터럴(D), 소수 자릿수, 지수(E) 및 한 개의 float 또는 한 개의 Long 식별자(FS). 이 숫자 리터럴은 DT_R4 또는 DT_R8 데이터 형식을 갖습니다. 예를 들어 1.E-4f, 4.6E6L, 8.365E+2f입니다.

{D}*.{D}+

전체 자릿수와 소수 자릿수를 갖는 비정수 숫자 리터럴. 소수 자릿수와 한 자릿수 이상의 소수 부분(D)이 있습니다. 이 숫자 리터럴은 DT_NUMERIC 데이터 형식을 갖습니다. 예를 들어 .9, 5.8, 0.346입니다.

{D}+.{D}*

전체 자릿수와 소수 자릿수를 갖는 비정수 숫자 리터럴. 한 자릿수 이상의 유효 자릿수(D)와 소수 자릿수가 있습니다. 이 숫자 리터럴은 DT_NUMERIC 데이터 형식을 갖습니다. 예를 들어 6., 0.2, 8.0입니다.

#{D}+

계보 식별자. 파운드(#) 문자와 한 자릿수(D) 이상으로 구성됩니다. 예: #123.

0[xX]{H}+{uU}

16진수 형식의 숫자 리터럴. 0, 대문자 또는 소문자 x, 하나 이상의 대문자 H, 선택적으로 부호 없는 접미사가 포함됩니다. 예를 들어 0xFF0A, 0X000010000U입니다.

식 계산기에 사용되는 데이터 형식에 대한 자세한 내용은 Integration Services 데이터 형식을 참조하십시오.

식은 여러 데이터 형식의 숫자 리터럴을 포함할 수 있습니다. 식 계산기는 이러한 식을 계산할 때 데이터를 호환 가능한 형식으로 변환합니다. 자세한 내용은 식에서의 Integration Services 데이터 형식을 참조하십시오.

그러나 일부 데이터 형식 간의 변환에는 명시적 캐스트가 필요합니다. 식 계산기는 명시적 데이터 형식 변환을 위한 캐스트 연산자를 제공합니다. 자세한 내용은 캐스트(SSIS 식)를 참조하십시오.

숫자 리터럴을 Integration Services 데이터 형식으로 매핑

식 계산기는 숫자 리터럴을 계산할 때 다음 변환을 수행합니다.

  • 정수 숫자 리터럴은 다음과 같이 정수 데이터 형식으로 매핑됩니다.

    접미사

    결과 형식

    없음

    DT_I4

    U

    DT_UI4

    L

    DT_I8

    UL

    DT_UI8

    중요 정보중요

    Long(L 또는 l) 접미사가 없으면 식 계산기는 값이 데이터 형식을 오버플로하는 경우에도 부호 있는 값을 DT_I4 데이터 형식으로 매핑하고 부호 없는 값을 DT_UI4 데이터 형식으로 매핑합니다.

  • 지수가 포함된 숫자 리터럴은 DT_R4 또는 DT_R8 데이터 형식으로 변환됩니다. 식에 Long 접미사가 있으면 DT_R8 데이터 형식으로 변환되고 float 접미사가 있으면 DT_R4 데이터 형식으로 변환됩니다.

  • 비정수 숫자 리터럴에 F 또는 f가 있으면 DT_R4 데이터 형식으로 매핑됩니다. L 또는 l을 포함하고 숫자가 정수이면 DT_I8 데이터 형식으로 매핑됩니다. 실수이면 DT_R8 데이터 형식으로 매핑됩니다. Long 접미사가 있으면 DT_R8 데이터 형식으로 변환됩니다.

  • 전체 자릿수와 소수 자릿수가 있는 비정수 숫자 리터럴은 DT_NUMERIC 데이터 형식으로 매핑됩니다.

문자열 리터럴

문자열 리터럴은 따옴표로 묶어야 합니다. 식 언어는 인쇄할 수 없는 문자 및 따옴표와 같이 일반적으로 이스케이프되는 문자의 이스케이프 시퀀스 집합을 제공합니다.

문자열 리터럴은 따옴표로 묶인 0개 이상의 문자로 구성됩니다. 문자열에 따옴표가 있으면 식이 구문 분석될 수 있도록 따옴표를 이스케이프해야 합니다. \x0000을 제외한 모든 2바이트 문자를 문자열에 사용할 수 있습니다. \x0000 문자는 문자열의 Null 종결자입니다.

이스케이프 시퀀스가 필요한 다른 문자가 문자열에 포함될 수 있습니다. 다음 표에서는 문자열 리터럴의 이스케이프 시퀀스를 보여 줍니다.

이스케이프 시퀀스

설명

\a

경고

\b

백스페이스

\f

용지 공급

\n

줄 바꿈

\r

캐리지 리턴

\t

가로 탭

\v

세로 탭

\"

물음표

\\

백슬래시

\xhhhh

16진수 표기법의 유니코드 문자

부울 리터럴

식 계산기는 일반적인 부울 리터럴 True 및 False를 제공합니다. 식 계산기는 대/소문자를 구분하지 않으며 대문자와 소문자의 모든 조합이 허용됩니다. 예를 들어 TRUE는 True와 같습니다.

[!참고]

  식에서 부울 리터럴은 공백으로 구분해야 합니다.

관련 내용

pragmaticworks.com의 기술 문서 - SSIS 식 치트 시트

Integration Services 아이콘(작은 아이콘) Integration Services 관련 최신 정보 얻기

Microsoft의 최신 다운로드, 문서, 예제 및 비디오와 커뮤니티에서 선택된 솔루션을 보려면 MSDN의 Integration Services 페이지를 방문하십시오.


이러한 업데이트에 대한 자동 알림을 받으려면 해당 페이지에서 제공하는 RSS 피드를 구독하십시오.