>데이터 베이스 >MySQL 튜토리얼 >SSIS는 날짜 문자열을 다른 데이터 유형으로 암시적으로 어떻게 변환합니까?

SSIS는 날짜 문자열을 다른 데이터 유형으로 암시적으로 어떻게 변환합니까?

DDD
DDD원래의
2024-12-21 01:47:10454검색

How Does SSIS Implicitly Convert Date Strings to Different Data Types?

SSIS 소스에서 날짜의 암시적 변환

데이터 작업 시 날짜를 다른 형식으로 변환해야 하는 경우가 많습니다. SSIS에서는 날짜 변환 동작이 예상치 못한 경우가 있습니다. 이 문서에서는 날짜 문자열을 다양한 SSIS 데이터 유형으로 암시적으로 변환하는 방법을 조사하고 지원되는 형식의 참조 차트를 제공합니다.

SSIS 데이터 유형의 기본 날짜/시간 형식

다음 표에는 날짜/시간의 기본 형식이 간략하게 설명되어 있습니다. 문자열에서 변환할 때 데이터 유형:

Data Type Default Format
DT_DBDATE yyyy-mm-dd
DT_FILETIME yyyy-mm-dd hh:mm:ss:fff
DT_DBTIME hh:mm:ss
DT_DBTIME2 hh:mm:ss[.fffffff]
DT_DBTIMESTAMP yyyy-mm-dd hh:mm:ss[.fff]
DT_DBTIMESTAMP2 yyyy-mm-dd hh:mm:ss[.fffffff]
DT_DBTIMESTAMPOFFSET yyyy-mm-dd hh:mm:ss[.fffffff] [{ -} hh:mm]

암시적 변환 실험

날짜/시간 문자열의 암시적 변환을 테스트하기 위해 SSIS와 SQL Server를 모두 사용하여 실험을 수행했습니다.

SSIS 암시적 날짜/시간 변환

Dataflowtask가 포함된 SSIS 패키지가 생성되었습니다. . 스크립트 구성 요소(소스)와 플랫 파일 대상이 사용되었습니다. 스크립트 구성 요소에는 DT_DbTimeStamp 유형의 출력 열이 있습니다. 스크립트 내에서 일련의 실험이 수행되었습니다.

  1. Date 변수가 정의되고 특정 날짜로 초기화되었습니다.
  2. 모든 문화 정보를 반복하고 가져오기 위해 루프가 생성되었습니다. 각 문화권과 관련된 모든 날짜/시간 형식.
  3. 루프 내에서 Date 변수를 형식화된 문자열로 변환하여 출력에 할당하려고 시도했습니다.
  4. 모든 변환 오류가 기록되었습니다.

이 실험 결과에 따르면 다양한 날짜/시간 형식이 고려되지 않는 형식이라도 암시적으로 DT_DBTIMESTAMP 데이터 유형으로 변환되는 것으로 나타났습니다. canonical.

SQL Server 암시적 날짜/시간 변환

SQL Server 쿼리를 사용하여 테스트했습니다. 특정 문자열 형식이 암시적으로 날짜/시간으로 변환되는지 여부. 다음 쿼리가 실행되었습니다.

SELECT CONVERT(DATETIME, '" + dtdate.ToString(strFormat) + '")

결과는 모든 언어 설정에서 두 가지 날짜/시간 문자열 형식만 올바르게 해석되는 것으로 나타났습니다.

  1. yyyyMMdd
  2. yyyy- MM-ddTHH:mm:ss (ISO8601)

위 내용은 SSIS는 날짜 문자열을 다른 데이터 유형으로 암시적으로 어떻게 변환합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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