245: Conversion failed when converting the value to data type
SQL Server의미
값을 대상 데이터 타입으로 변환할 수 없었다. 예를 들어 문자열 값을 int나 date로 변환할 때 부적합한 내용 때문에 암시적/명시적 변환이 실패했다.
원인
비숫자 텍스트를 int/decimal로 변환, 유효하지 않은 날짜 형식, 컬럼 비교에서의 암시적 타입 변환, WHERE 또는 JOIN 조건의 호환되지 않는 타입, 또는 잘못된 형식의 입력 데이터.
해결 방법
안전한 변환 함수를 사용한다: TRY_CAST 또는 TRY_CONVERT(실패 시 NULL 반환). ISNUMERIC/TRY_CONVERT로 문제 행을 식별한다. 컬럼 타입을 맞춰 암시적 변환을 제거한다. 입력을 검증하고 날짜에는 명시적 형식(예: CONVERT style)을 사용한다.
같은 데이터베이스의 다른 항목
- 845Time-out occurred while waiting for buffer latch
- 3201Cannot open backup device. Operating system error (backup device error)
- 8134Divide by zero error encountered
- 515Cannot insert the value NULL into column
- 8115Arithmetic overflow error converting expression to data type
- 512Subquery returned more than 1 value
- 207Invalid column name