[MySQL] Error: Data too long for column "컬럼명"

2025. 2. 8. 15:05Trouble Shootings/Web

 

데이터베이스 테이블 컬럼에 걸어놓은 데이터 타입에 비해, 입력 데이터가 더 많은 저장 공간을 차지해 잘리는 현상입니다.

### SQL: INSERT INTO users (code_id, name, nickname, email) VALUES (?, ?, ?, ?)
### Cause: com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: 
Data too long for column 'nickname' at row 1;
Data truncation: Data too long for column 'nickname' at row 1] with root cause

 

닉네임을 받기 위해 `varchar(13)` 정도로 데이터 타입 및 크기를 명시해놨는데, 한글로 닉네임을 받다보니 이는 터무니 없이 작은 공간이라는 걸 깨달았습니다. 한글은 3 byte를 차지하니까 많아봐야 4글자가 들어가네요...

 

그래서 해당 컬럼의 데이터 크기를 수정하여 해결하였습니다.

ALTER TABLE users MODIFY nickname varchar(40);

 

728x90
반응형