SQL에서 C로: 타임스탬프
타임스탬프 ODBC SQL 데이터 형식의 식별자는 다음과 같습니다.
- SQL_TYPE_TIMESTAMP
다음 표에서는 타임스탬프 SQL 데이터를 변환할 수 있는 ODBC C 데이터 형식을 보여줍니다. 테이블의 열 및 용어에 대한 설명은 SQL에서 C 데이터 형식으로 데이터 변환을 참조 하세요.
C 형식 식별자 | 테스트 | *TargetValuePtr | *StrLen_or_IndPtr | SQLSTATE |
---|---|---|---|---|
SQL_C_CHAR | BufferLength> 문자 바이트 길이 20 <= BufferLength<= 문자 바이트 길이 BufferLength< 20 |
데이터 잘린 데이터[b] Undefined |
데이터 길이(바이트) 데이터 길이(바이트) Undefined |
해당 없음 01004 22003 |
SQL_C_WCHAR | BufferLength> 문자 길이 20 <= BufferLength<= 문자 길이 BufferLength< 20 |
데이터 잘린 데이터[b] Undefined |
문자의 데이터 길이 문자의 데이터 길이 Undefined |
해당 없음 01004 22003 |
SQL_C_BINARY | 데이터의 <바이트 길이 = BufferLength Data >BufferLength의 바이트 길이 |
데이터 Undefined |
데이터 길이(바이트) Undefined |
해당 없음 22003 |
SQL_C_TYPE_DATE | 타임스탬프의 시간 부분은 0입니다.[a] 타임스탬프의 시간 부분이 0이 아닌 경우[a] |
데이터 잘린 데이터[c] |
6[f] 6[f] |
해당 없음 01S07 |
SQL_C_TYPE_TIME | 타임스탬프의 소수 자릿수 초 부분이 0입니다.[a] 타임스탬프의 소수 자릿수 초 부분이 0이 아닌 경우[a] |
Data[d] 잘린 데이터[d], [e] |
6[f] 6[f] |
해당 없음 01S07 |
SQL_C_TYPE_TIMESTAMP | 타임스탬프의 소수 자릿수 초 부분이 잘리지 않음[a] 타임스탬프의 소수 자릿수 초 부분이 잘립니다[a] |
Data[e] 잘린 데이터[e] |
16[f] 16[f] |
해당 없음 01S07 |
[a] 이 변환에서는 BufferLength 값이 무시됩니다. 드라이버는 *TargetValuePtr 의 크기가 C 데이터 형식의 크기라고 가정합니다.
[b] 타임스탬프의 소수 자릿수 초가 잘립니다.
[c] 타임스탬프의 시간 부분이 잘립니다.
[d] 타임스탬프의 날짜 부분은 무시됩니다.
[e] 타임스탬프의 소수 자릿수 초 부분이 잘립니다.
[f] 해당 C 데이터 형식의 크기입니다.
타임스탬프 SQL 데이터가 문자 C 데이터로 변환되면 결과 문자열은 "yyyy-mm-dd hh:mm:ss[입니다.f...]" 형식으로, 소수 자릿수 초 동안 최대 9자리를 사용할 수 있습니다. 이 형식은 Windows 국가/지역 설정의 영향을 받지 않습니다. 소수점 및 소수 자릿수 초를 제외하고 타임스탬프 SQL 데이터 형식의 전체 자릿수에 관계없이 전체 형식을 사용해야 합니다.