문제

MS SQL Server 2008 대량 삽입 Datetime 열에 삽입 된 것은 초 부분의 세 번째 십진 자리에서 오류가 발생합니다. 2009-09-19 15 : 02 : 41.328은 2009-09-19 15 : 02 : 41.327 in이됩니다. 데이터베이스.

입력 텍스트 파일에 포함 된 내용은 다음과 같습니다.

1   2009-09-19 15:02:41.328

대량 삽입 후 테이블의 모습은 다음과 같습니다.

1> select * from mss_t
2> go
 primary_key          data_1
 -------------------- -----------------------
                    1 2009-09-19 15:02:41.327

코드는 다음과 같습니다.

CREATE TABLE mss_t (
   primary_key    BIGINT NOT NULL PRIMARY KEY,
   data_1         DATETIME NOT NULL )
GO

BULK INSERT mss_t
FROM 'C:\temp\sa_t.txt'
GO
도움이 되었습니까?

해결책

오류가 아닙니다 ...

SQL Server의 DateTime은 항상 이것입니다

정확도는 .000, .003 또는 .007 초의 증분으로 반올림됩니다.

그게 :

http://msdn.microsoft.com/en-us/library/ms187819.aspx(DateTime Datatype 정보)

더 정확한 스토리지를 원한다면 DateTime2 DataType을 사용할 수 있습니다.

평범한 것보다 정확도가 더 높습니다

http://msdn.microsoft.com/en-us/library/bb677335.aspx

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top