2628: String or binary data would be truncated in table, column ...; truncated value
SQL Server의미
8152의 개선 버전(SQL Server 2019 이상). 어느 테이블, 어느 컬럼, 어떤 값이 잘릴지를 명시적으로 보고한다.
원인
대상 컬럼의 정의 길이보다 긴 텍스트/바이너리 값 기록. 대개 스키마 불일치 또는 예상치 못한 길이의 입력 데이터.
해결 방법
오류 텍스트의 테이블과 컬럼 이름을 확인하고, 컬럼을 넓히거나 원본 값을 줄인다. SQL Server 2019에서 2628은 호환성 수준 150+에서만 기본으로 발생한다. 더 낮은 수준에서는 ALTER DATABASE SCOPED CONFIGURATION SET VERBOSE_TRUNCATION_WARNINGS = ON 또는 trace flag 460으로 활성화한다. SQL Server 2016 SP2 CU6 및 2017 CU12부터는 trace flag 460으로 같은 상세 메시지를 얻을 수 있다. 전송 계층에서 필드 길이를 대상에 맞춘다.
같은 데이터베이스의 다른 항목
- 547The INSERT/UPDATE/DELETE statement conflicted with the FOREIGN KEY / CHECK constraint
- 18456Login failed for user
- 8152String or binary data would be truncated
- 1222Lock request time out period exceeded
- 9002The transaction log for database is full due to ...
- 1105Could not allocate space for object in database because the filegroup is full
- 208Invalid object name