내 SQL 쿼리에 이상한 오류가 있습니다.varchar 데이터 형식을 datetime으로 변환합니다. 범위를 벗어난 오류
이 작동 :
INSERT INTO tbl_SomeTable(Send_Type,Remote_Eml,Cover_Subj,Cover_Note,AtnId,StandortEinsatzValue,Standort,KundenNr,AtnTel,Name,Strasse,AtnName,AreaManagerContact,Datum,PLZOrt)
VALUES ('2', '', '', '','02832','1','Replaced','2001158207','Replaced','Real','Replaced','Replaced','Replaced','10.12.2016','15745 Replaced')
이 나에게 오류를 제공합니다
INSERT INTO tbl_SomeTable(Send_Type,Remote_Eml,Cover_Subj,Cover_Note,AtnId,StandortEinsatzValue,Standort,KundenNr,AtnTel,Name,Strasse,AtnName,AreaManagerContact,Datum,PLZOrt)
VALUES ('2', '', '', '','02832','1','Replaced','2001158207','Replaced','Real','Replaced','Replaced','Replaced','17.12.2016','15745 Replaced')
The conversion of a varchar data type to a datetime data type resulted in an out-of-range value.
만 차이가 날 수 있습니다. "10.12.2016"vs "17.12.2016". 열 "Datum"의 유형이 "datetime"입니다.
우리는 2016 년당신이 날 도울 수있는 SQL 서버를 사용합니까?
'17 '은 (는) 월 값의 범위를 벗어 났으며 엔진이 en-US로 날짜를 구문 분석 할 가능성이 큽니다. '10.12.2016'과 같은 문화권 관련 문자열을 사용하여 데이터를 삽입하지 마십시오. 유일하게 인식되는 독립적 인 문자열 형식은'20161210' (분리 자없는 ISO)입니다. 더 나은 방법은 실제 입력 된'DATETIME' 매개 변수를 사용하는 것입니다. –
SELECT CONVERT (VARCHAR, Datum, 101) FROM 표 – Chanukya
이 주석 중 하나를 사용해야합니다. 리터럴''20161212 '를 사용하거나 적절한 형식 마스크 번호와 함께 CONVERT를 사용하십시오. –