datetime 데이터 형식 변환(ODBC)
다음 변환은 OLE DB에서 이미 정의되었거나 OLE DB의 지속적인 확장에 포함됩니다. 각 공급자가 제공하는 변환은 공급자가 제공하는 커뮤니티에 의해 결정되며, 그 결과 공급자 간에 일치하지 않는 경우가 많습니다. 대괄호 안에 있는 값은 선택적 요소입니다.
datetime 문자열의 형식은 'yyyy-mm-dd[ hh:mm:ss[.9999999][ plus/minus hh:mm]]'입니다.
시간 문자열의 형식은 'hh:mm:ss[.9999999]'입니다.
날짜 문자열의 형식은 'yyyy-mm-dd'입니다.
문자열에서 변환을 시작하면 공백 및 필드 너비를 보다 융통성 있게 사용할 수 있습니다. 자세한 내용은 ODBC 날짜/시간 기능 향상을 위한 데이터 형식 지원의 "데이터 형식: 문자열 및 리터럴" 섹션을 참조하십시오.
일반적인 변환 규칙은 다음과 같습니다.
시간 구성 요소가 없지만 받는 사람이 시간을 저장할 수 있는 경우 시간이 0으로 설정됩니다.
날짜 구성 요소가 없지만 받는 사람이 날짜를 저장할 수 있는 경우 현재 날짜가 사용됩니다.
클라이언트에서 사용하는 데이터 형식에는 표준 시간대 구성 요소가 없지만 서버에서 표준 시간대를 저장할 수 있는 경우 날짜가 클라이언트 표준 시간대로 저장됩니다. 이 동작은 서버 동작과는 다릅니다.
서버 유형에는 표준 시간대 구성 요소가 없지만 클라이언트 유형에 표준 시간대 구성 요소가 있는 경우 시간이 서버에 저장되기 전에 UTC로 변환됩니다.
시간 구성 요소가 있지만 받는 사람이 시간을 저장할 수 없는 경우 시간 구성 요소가 무시됩니다.
날짜 구성 요소가 있지만 받는 사람이 날짜를 저장할 수 없는 경우 날짜 구성 요소가 무시됩니다.
C에서 SQL로 변환할 때 초 또는 소수 자릿수 초의 잘림이 발생하는 경우 SQLSTATE 22008 및 "Datetime 필드 오버플로" 메시지가 포함된 진단 레코드가 생성됩니다.
SQL에서 C로 변환할 때 초 또는 소수 자릿수 초의 잘림이 발생하는 경우 SQLSTATE 01S07 및 "일부가 잘렸습니다" 메시지가 포함된 진단 레코드가 생성됩니다.
섹션 내용
C에서 SQL로의 변환
C 형식을 SQL Server 날짜/시간 형식으로 변환할 때 고려해야 할 문제를 표시합니다.SQL에서 C로 변환
SQL Server 날짜/시간 형식을 C 형식으로 변환할 때 고려해야 할 문제를 표시합니다.