[MySQL]data truncation 에러

ynoolee·2021년 9월 6일
0

게시판만들기

목록 보기
3/5

스프링 부트에서 암호화한 password를 가진 user를 저장하는 과정에서 바로 data truncation error가 나왔다.

  • 아무리 짧은 pw라도 암호화하면 길어지기에 varchar(50)으로 선언해 놓았음에도 에러가 떴다.
com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Data too long for column 'password' at row 1

data truncation error

  • 딱 봐도 data type이 현재 insert하는 데이터를 수용할 수 없어서 뜨는 에러다.

원인 : BCrypt 인코딩 결과물의 크기

🚀 BCrypt

  • BCrypt인코딩 결과 60개 characters로 이루어진 String이 반환된다. 따라서 varchar(60)으로 바꾸었더니 에러가 해결되었다.
alter table users modify password varchar(60);

0개의 댓글