2014-10-08 2 views
0

I 다음 Excel 통합 문서가 : 그것은으로 포맷 된 것하십시오 VARCHAR 데이터 유형의 변환을 날짜 시간 데이터 유형은 범위를 벗어난 값의 결과

https://meocloud.pt/link/7cb3ef48-7556-4d36-ab9a-c247d3f7b29d/FichasTeste.xls/

을 SQL 데이터베이스로 가져 오기. 아니, 상태가 항상 동일 내가 엑셀 ​​파일을 가져올 때

SQL Properties

당신은 매핑을 볼 수 있듯이이 수입 Mapping

에서 올바른 : 서버는 다음과 같은 내용을 가지고 날짜와 함께 칼럼에 대한 수정 사항과 관련이 있습니다.

242 : varchar 데이터 형식을 datetime 데이터 형식으로 변환하면 범위를 벗어난 값이 반환됩니다.

3621 : 진술이 종료되었습니다.

오류가 발생하지 않고 해당 행을 가져올 수 있도록 수정해야하는 항목은 무엇입니까?

답변

0

엑셀 필드를 TEXT으로 변경하면 날짜가 정수로 저장됩니다.하지만이 문제가 발생한 이유를 모르겠지만 Excel에서 가져 와서 날짜를 가질 수 있어야합니다. 적어도 SQL 가져 오기 마법사와 SSIS를 함께 사용할 수 있습니다.

한 가지 해결 허용되는 형식으로 날짜를 얻기 위해 Excel에서 TEXT() 기능을 사용하고 있습니다 :

=TEXT(F2,"yyyy-mm-dd") 

내가 OPENROWSET()를 사용하여 엑셀에서 가져 오기를 좋아하지만, 그 몇 가지 추가 설정이 필요하고 자신의 단점입니다했습니다

SELECT * 
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;Database=C:\YourExcelFile.xls', [Sheet1$]) 
+0

불행히도 TEXT()를 사용하면 도움이되지 않습니다. 프로파일 러를 사용하면 날짜 대신 항상 해당 형식 대신 '1/1/2013'과 같이 표시됩니다. –

관련 문제