2009-08-04 2 views
0

bcp 함수 (bcp_sendrow/bind 등)를 사용하여 datetime 열이있는 테이블에 삽입하려고하면 "잘못된 시간 형식"문제가 발생합니다. 그래서 예를 들어, Google 검색 구조 당 채우기 : 나는 8 월 3 일 정확히 localtime, 8 월 3 일 채울 싶으면 예 : 구조체 구성원을 채울 줄 :sql server 2008 : bcp_sendrow, 문제 : 잘못된 시간 형식

dtdays = 40026 자정 이후 19000101)와 dttime = 28,800,000 (NUM의 밀리 세컨드)

(또한 VAR을 구속 한. SQLDATETIME로) dttime는 7 자리 와이드 (이하 인 경우), 다음 BCP suceeds (하지만 분명히 잘못된 시간 값 (날짜 부분은 괜찮습니다)

어떻게 처리합니까? 나는 datetime2/time 등을 시도했지만 아무것도 도움이되지 않았다. 도와주세요. 모든 조언/아이디어를 가장 높이 평가합니다. (SQL Server 2008 및 (ODBC) sql 기본 클라이언트 10.0)

감사합니다!

답변

0

는 .. .. 마침내 (일종의) -DBDATETIME :: dttime (밀리 세컨드의 NUM 일의 시작 이후) 3.333333에 의해 분할 될 필요가 표현하는 당신이 가장 가까운 값을 얻을 방법이있어하지 될까요 결코 당신의 시각. (필드 너비는 7 자리 수입니다.) .. 아마도 이것은 datetime 형식이 초의 1/3만을 나타낼 수있는 것과 관련이 있습니다. 정확히 .... 어쨌든 ODBC bcp api와 함께 datetime2를 사용해 보았지만 시간이 걸리는 부분 작업을 할 수 없었습니다 누군가가 더 좋은 방법을 찾으면 알려주세요. 감사합니다!