Integration Services 데이터 형식

업데이트: 2007년 9월 15일

데이터가 패키지의 데이터 흐름으로 들어갈 때 데이터를 추출하는 원본은 데이터를 Integration Services 데이터 형식으로 변환합니다. 숫자 데이터에는 숫자 데이터 형식이 지정되고, 문자열 데이터에는 문자 데이터 형식이, 그리고 날짜에는 날짜 데이터 형식이 지정됩니다. 또한 GUID 및 BLOB(Binary Large Object Block)과 같은 다른 데이터에는 해당 Integration Services 데이터 형식이 지정됩니다. 데이터에 Integration Services 데이터 형식과 호환되지 않는 데이터 형식이 있는 경우에는 오류가 발생합니다.

일부 데이터 흐름 구성 요소는 Integration Services 데이터 형식과 Microsoft .NET Framework의 관리 데이터 형식 간의 데이터 형식을 변환합니다. Integration Services와 관리 데이터 형식 간 매핑에 대한 자세한 내용은 Mapping Data Types in the Data Flow을 참조하십시오.

다음 표에서는 Integration Services 데이터 형식을 나열합니다.

데이터 형식 설명

DT_BOOL

부울 값입니다.

DT_BYTES

이진 데이터 값입니다. 길이는 가변적이고 최대 길이는 8000바이트입니다.

DT_CY

통화 값입니다. 이 데이터 형식은 8바이트의 부호 있는 정수이며 소수 자릿수는 4이고 최대 전체 자릿수는 19입니다.

DT_DATE

연도, 월, 일 및 시간으로 구성된 날짜 구조입니다.

DT_DATE 데이터 형식은 8바이트 부동 소수점 수를 사용하여 구현됩니다. 일은 정수 증분으로 표시되며 1899년 12월 30일부터 시작하여 자정을 0시로 표시합니다. 시간 값은 숫자에서 소수 부분의 절대값으로 표시됩니다. 그러나 부동 소수점 값은 실수 값을 모두 나타낼 수 없으므로 DT_DATE로 나타낼 수 있는 날짜 범위는 제한되어 있습니다.

반면 DT_DBTIMESTAMP는 년, 월, 일, 시, 분, 초 및 밀리초에 대한 개별 필드가 있는 구조로 표시되며, 이 데이터 형식은 나타낼 수 있는 날짜 범위에 대한 제한이 없습니다.

DT_DBDATE

연도, 월 및 일로 구성된 날짜 구조입니다.

DT_DBTIME

시간, 분 및 초로 구성된 시간 구조입니다.

DT_DBTIMESTAMP

연도, 월, 일, 시간, 분, 초 및 밀리초로 구성된 타임스탬프 구조입니다.

DT_DECIMAL

전체 자릿수 및 소수 자릿수가 고정된 정확한 숫자 값입니다. 이 데이터 형식은 별개의 부호가 포함된 12바이트의 부호 없는 정수이며 소수 자릿수는 0에서 28이고 최대 전체 자릿수는 29입니다.

DT_FILETIME

1601년 1월 1일부터 100 나노초 간격의 수를 나타내는 64비트 값입니다.

DT_GUID

GUID(Globally Unique Identifier)입니다.

DT_I1

1바이트의 부호 있는 정수입니다.

DT_I2

2바이트의 부호 있는 정수입니다.

DT_I4

4바이트의 부호 있는 정수입니다.

DT_I8

8바이트의 부호 있는 정수입니다.

DT_NUMERIC

고정 전체 자릿수와 소수 자릿수가 포함된 정확한 숫자 값입니다. 이 데이터 형식은 별개의 부호가 포함된 16바이트의 부호 없는 정수이며 소수 자릿수는 0에서 38이고 최대 전체 자릿수는 38입니다.

DT_R4

단정밀도의 부동 소수점 값입니다.

DT_R8

배정밀도의 부동 소수점 값입니다.

DT_STR

최대 길이가 8000자인 Null 종료 ANSI/MBCS 문자열입니다. 열 값에 추가 Null 종결자가 들어 있으면 해당 문자열은 첫 번째 Null이 나타나는 위치에서 잘립니다.

DT_UI1

1바이트의 부호 없는 정수입니다.

DT_UI2

2바이트의 부호 없는 정수입니다.

DT_UI4

4바이트의 부호 없는 정수입니다.

DT_UI8

8바이트의 부호 없는 정수입니다.

DT_WSTR

최대 길이가 4000자인 Null 종료 유니코드 문자열입니다. 열 값에 추가 Null 종결자가 들어 있으면 해당 문자열은 첫 번째 Null이 나타나는 위치에서 잘립니다.

DT_IMAGE

최대 크기가 231-1(2,147,483,647) 바이트인 이진 값입니다. .

DT_NTEXT

최대 길이가 230 - 1(1,073,741,823) 문자인 유니코드 문자열입니다.

DT_TEXT

최대 길이가 231 -1(2,147,483,647) 문자인 ANSI/MBCS 문자열입니다.

열의 데이터 형식 변경

열의 데이터에 원본 데이터 형식으로 할당된 전체 너비가 필요하지 않은 경우 열의 데이터 형식을 변경할 수 있습니다. 각 행이 좁을수록 원본에서 대상으로 데이터를 이동하는 속도가 빨라지기 때문에 각 데이터 행을 가능한 한 좁게 만들면 데이터 전송 시 성능을 최적화할 수 있습니다.

Integration Services에는 숫자 데이터 형식이 모두 포함되어 있으므로 데이터의 크기와 적합한 데이터 형식을 찾아 볼 수 있습니다. 예를 들어 데이터 형식이 DT_UI8인 열의 값이 항상 0에서 3000 사이의 정수인 경우 데이터 형식을 DT_UI2로 변경할 수 있습니다. 마찬가지로, 데이터 형식이 DT_CY인 열에 대해 정수 데이터 형식을 대신 사용해도 패키지의 데이터 요구 사항에 문제가 없다면 해당 데이터 형식을 DT_I4로 변경할 수 있습니다.

또한 날짜/시간 데이터가 포함된 열의 데이터 형식을 변경하여 데이터의 날짜 또는 날짜의 시간 부분만 따로 추출할 수도 있습니다. 예를 들어 열의 데이터 형식을 DT_DBTIMESTAMP에서 DT_DBTIME로 변경할 경우에는 해당 값의 시간, 분 및 초 부분만 사용할 수 있습니다.

열의 데이터 형식은 다음과 같은 방식으로 변경할 수 있습니다.

  • 변환을 사용하여 열 값을 식의 결과로 바꾸거나 원래 열이 아닌 다른 데이터 형식을 갖는 열의 복사본을 만듭니다. 자세한 내용은 파생 열 변환을 참조하십시오.
  • 변환을 사용하여 열의 데이터 형식을 다른 데이터 형식으로 형변환합니다. 자세한 내용은 데이터 변환을 참조하십시오.

[!참고] 부울 값은 숫자가 아니라 논리 값입니다. 일부 환경에서는 부울 값이 숫자로 표시될 수 있지만 숫자로 저장되지는 않으며, 다양한 프로그래밍 언어에서는 부울 값을 .NET Framework 메서드와는 다른 숫자 값으로 표시합니다. 예를 들어 Visual Basic에서 사용할 수 있는 변환 함수는 True를 -1로 변환하지만 .NET Framework의 System.Convert.ToInt32 메서드는 True를 +1로 변환합니다. Integration Services 식 언어는 True를 -1로 변환합니다. 오류나 예기치 않은 결과를 방지하려면 TrueFalse에 특정 숫자 값을 사용하는 코드를 작성하지 말아야 합니다. 가능하면 부울 변수는 부울 변수용으로 설계된 논리 값으로만 사용해야 합니다.

데이터베이스 데이터 형식에 Integration Services 데이터 형식 매핑

다음 표에서는 일부 데이터베이스에서 사용되는 데이터 형식을 Integration Services 데이터 형식에 매핑하는 데 대한 지침을 제공합니다. 이러한 매핑은 SQL Server 가져오기 및 내보내기 마법사에서 데이터 원본의 데이터를 가져올 때 사용되는 매핑 파일의 내용을 요약한 것입니다. 이러한 매핑 파일에 대한 자세한 내용은 SQL Server 가져오기 및 내보내기 마법사를 사용하여 패키지 만들기를 참조하십시오.

ms141036.note(ko-kr,SQL.90).gif중요:
이러한 매핑은 엄격하게 일치해야 함을 나타내기 위한 것이 아니라 단지 지침을 제공하기 위한 것입니다. 일부 경우에는 이 표에 표시된 데이터 형식이 아닌 다른 데이터 형식을 사용해야 합니다.
데이터 형식 SQL Server (SQLOLEDB; SQLNCLI) SQL Server(SqlClient) Jet Oracle (MSDAORA) Oracle (OracleClient) DB2 (DB2OLEDB) DB2 (IBMDADB2)

DT_BOOL

bit

bit

Bit

DT_BYTES

binary, varbinary, timestamp

binary, varbinary, timestamp

BigBinary, VarBinary

RAW

RAW

DT_CY

smallmoney, money

smallmoney, money

Currency

DT_DATE

DT_DBDATE

DT_DBTIME

DT_DBTIMESTAMP

datetime, smalldatetime

datetime, smalldatetime

DateTime

TIMESTAMP, DATE, INTERVAL

TIMESTAMP, DATE, INTERVAL

TIME, TIMESTAMP, DATE

TIME, TIMESTAMP, DATE

DT_DECIMAL

DT_FILETIME

DT_GUID

uniqueidentifier

uniqueidentifier

GUID

DT_I1

DT_I2

smallint

smallint

Short

SMALLINT

SMALLINT

DT_I4

int

int

Long

INTEGER

INTEGER

DT_I8

bigint

bigint

BIGINT

BIGINT

DT_NUMERIC

decimal, numeric

decimal, numeric

Decimal

NUMBER, INT

NUMBER, INT

DECIMAL, NUMERIC

DECIMAL, NUMERIC

DT_R4

real

real

Single

REAL

REAL

DT_R8

float

float

Double

FLOAT, REAL

FLOAT, REAL

FLOAT, DOUBLE

FLOAT, DOUBLE

DT_STR

char, varchar

VarChar

CHAR, ROWID, VARCHAR2

CHAR, VARCHAR

CHAR, VARCHAR

DT_UI1

tinyint

tinyint

Byte

DT_UI2

DT_UI4

DT_UI8

DT_WSTR

nchar, nvarchar, sql_variant, xml

char, varchar, nchar, nvarchar, sql_variant, xml

LongText

NVARCHAR2, NCHAR

CHAR, ROWID, VARCHAR2, NVARCHAR2, NCHAR

GRAPHIC, VARGRAPHIC

GRAPHIC, VARGRAPHIC

DT_IMAGE

image

image

LongBinary

LONG RAW, BLOB, LOBLOCATOR, BFILE, VARGRAPHIC, LONG VARGRAPHIC, 사용자 정의

LONG RAW, BLOB, LOBLOCATOR, BFILE, VARGRAPHIC, LONG VARGRAPHIC, 사용자 정의

CHAR () FOR BIT DATA, VARCHAR () FOR BIT DATA

CHAR () FOR BIT DATA, VARCHAR () FOR BIT DATA, BLOB

DT_NTEXT

ntext

text, ntext

NCLOB, NVARCHAR, TEXT

LONG, CLOB, NCLOB, NVARCHAR, TEXT

LONG VARCHAR, NCHAR, NVARCHAR, TEXT

LONG VARCHAR, DBCLOB, NCHAR, NVARCHAR, TEXT

DT_TEXT

text

CLOB, LONG

LONG VARCHAR FOR BIT DATA

LONG VARCHAR FOR BIT DATA, CLOB

데이터 흐름의 데이터 형식 매핑에 대한 자세한 내용은 Mapping Data Types in the Data Flow을 참조하십시오.

참고 항목

개념

데이터 흐름의 데이터 작업

도움말 및 정보

SQL Server 2005 지원 받기

변경 내역

릴리스 내역

2007년 9월 15일

변경된 내용
  • DT_DBTIMESTAMP 데이터 형식에 대한 설명을 업데이트했습니다.

2006년 7월 17일

변경된 내용
  • 부울 데이터 형식이 정수로 변환될 때 발생할 수 있는 문제에 대한 설명을 추가했습니다.
  • 추가 Null 종결자가 들어 있는 DT_STR 또는 DT_WSTR 형식의 열 값은 첫 번째 Null 문자에서 잘린다는 설명을 추가했습니다.

2005년 12월 5일

변경된 내용
  • Integration Services 데이터 형식을 관리 데이터 형식으로 매핑하는 방법에 대한 정보 및 항목 링크를 추가했습니다.
  • DT_DATE와 DT_DBTIMESTAMP 비교 정보를 추가했습니다.