캐스트(SSIS 식)
적용 대상: SQL Server Azure Data Factory의 SSIS Integration Runtime
식의 데이터 형식을 다른 데이터 형식으로 명시적으로 변환합니다. 캐스트 연산자는 잘림 연산자로도 사용할 수 있습니다.
구문
(type_spec) expression
인수
type_spec
유효한 SSIS 데이터 형식입니다.
expression
유효한 식입니다.
결과 형식
type_spec 데이터 형식입니다. 자세한 내용은 Integration Services 데이터 형식을 참조하세요.
설명
다음 다이어그램에서는 유효한 캐스트 연산을 보여 줍니다.
일부 데이터 형식으로 캐스팅하려면 매개 변수가 필요합니다. 다음 표에서는 이러한 데이터 형식과 해당 매개 변수를 보여 줍니다.
데이터 형식 | 매개 변수 | 예시 |
---|---|---|
DT_STR | charcount codepage |
(DT_STR,30,1252)는 1252 코드 페이지를 사용하여 30바이트 또는 30자의 단일 문자를 DT_STR 데이터 형식으로 캐스팅합니다. |
DT_WSTR | Charcount | (DT_WSTR,20)은 20개의 바이트 쌍 또는 20개의 유니코드 문자를 DT_WSTR 데이터 형식으로 캐스팅합니다. |
DT_BYTES | Bytecount | (DT_BYTES,50)은 50바이트를 DT_BYTES 데이터 형식으로 캐스팅합니다. |
DT_DECIMAL | Scale | (DT_DECIMAL,2)는 2의 소수 자릿수를 사용하여 숫자 값을 DT_DECIMAL 데이터 형식으로 캐스팅합니다. |
DT_NUMERIC | Precision Scale |
(DT_NUMERIC,10,3)은 10의 전체 자릿수와 3의 소수 자릿수를 사용하여 숫자 값을 DT_NUMERIC 데이터 형식으로 캐스팅합니다. |
DT_TEXT | Codepage | (DT_TEXT,1252)는 1252 코드 페이지를 사용하여 값을 DT_TEXT 데이터 형식으로 캐스팅합니다. |
문자열을 DT_DATE로 캐스팅하거나 그 반대의 경우 변환 로캘이 사용됩니다. 그러나 로캘 기본 설정에서 ISO 형식을 사용하는지에 관계없이 날짜는 YYYY-MM-DD의 ISO 형식입니다.
참고 항목
문자열을 DT_DATE 이외의 날짜 데이터 형식으로 변환하려면 Integration Services 데이터 형식을 참조하세요.
코드 페이지가 멀티바이트 문자 코드 페이지인 경우 바이트 및 문자 수가 다를 수 있습니다. 동일한 charcount 값을 사용하여 DT_WSTR에서 DT_STR로 캐스팅하면 변환된 문자열의 마지막 문자가 잘릴 수 있습니다. 대상 테이블의 열에서 충분한 스토리지를 사용할 수 있는 경우 멀티바이트 코드 페이지에 필요한 바이트 수를 반영하도록 charcount 매개 변수 값을 설정합니다. 예를 들어 936 코드 페이지를 사용하여 문자 데이터를 DT_STR 데이터 형식으로 캐스팅하는 경우 데이터가 포함할 문자 수보다 최대 2배 더 큰 값으로 charcount를 설정해야 합니다. UTF-8 코드 페이지를 사용하여 문자 데이터를 캐스팅하는 경우 charcount를 최대 4배 더 큰 값으로 설정해야 합니다.
날짜 데이터 형식의 구조에 대한 자세한 내용은 Integration Services 데이터 형식을 참조하세요.
SSIS 식 예제
이 예제에서는 숫자 값을 정수로 캐스팅합니다.
(DT_I4) 3.57
이 예제에서는 1252 코드 페이지를 사용하여 정수를 문자열로 캐스팅합니다.
(DT_STR,1,1252)5
이 예제에서는 3자 문자열을 더블바이트 문자로 캐스팅합니다.
(DT_WSTR,3)"Cat"
이 예제에서는 정수를 소수 자릿수가 2인 소수로 캐스팅합니다.
(DT_DECIMAl,2)500
이 예에서는 정수를 전체 자릿수가 7이고 소수 자릿수가 3인 정수로 캐스팅합니다.
(DT_NUMERIC,7,3)4000
이 예제에서는 1252 코드 페이지를 사용하여 nvarchar 데이터 형식 및 50의 길이로 정의된 FirstName 열의 값을 문자열로 캐스팅합니다.
(DT_STR,50,1252)FirstName
이 예제에서는 DT_DBDATE 형식의 DateFirstPurchase 열에 있는 값을 길이가 20인 유니코드 문자열에 캐스팅합니다.
(DT_WSTR,20)DateFirstPurchase
이 예제에서는 "True" 문자열 리터럴을 부울로 캐스팅합니다.
(DT_BOOL)"True"
이 예제에서는 문자열 리터럴을 DT_DBDATE로 캐스팅합니다.
(DT_DBDATE) "1999-10-11"
이 예제에서는 문자열 리터럴을 소수 자릿수 초에 5자리를 사용하는 DT_DBTIME2 데이터 형식으로 캐스팅합니다. (DT_DBTIME2 데이터 형식은 소수 자릿수 초에 지정된 0부터 7자리까지 가질 수 있습니다.)
(DT_DBTIME2, 5) "16:34:52.12345"
이 예제에서는 문자열 리터럴을 소수 자릿수 초에 4자리를 사용하는 DT_DBTIMESTAMP2 데이터 형식으로 캐스팅합니다. (DT_DBTIMESTAMP2 데이터 형식은 소수 자릿수 초에 지정된 0부터 7자리까지 가질 수 있습니다.)
(DT_DBTIMESTAMP2, 4) "1999-10-11 16:34:52.1234"
이 예제에서는 문자열 리터럴을 소수 자릿수 초에 7자리를 사용하는 DT_DBTIMESTAMPOFFSET 데이터 형식으로 캐스팅합니다. (DT_DBTIMESTAMPOFFSET 데이터 형식은 소수 자릿수 초에 지정된 0부터 7자리까지 가질 수 있습니다.)
(DT_DBTIMESTAMPOFFSET, 7) "1999-10-11 16:34:52.1234567 + 5:35"
참고 항목
연산자 우선 순위 및 결합성
연산자(SSIS 식)
Integration Services(SSIS) 식
식의 Integration Services 데이터 형식