Notice
Recent Posts
Recent Comments
Link
코알못
[MYSQL] 이모지 데이터 저장 및 조회 본문
728x90
기존 MYSQL 이 설치 되어 있었고, 이모지 Insert 시 아래와 같은 오류 발생
java.sql.SQLException: Incorrect string value: '\xF0\x9F\xA4\xAF' for column '칼럼명' at row 1
확인해보니 Mysql 의 utf-8은 3 byte 문자 입력 가능 하나, 이모지는 4 byte로 표현되는 문자를 넣으려고 하여 발생한 오류이다.
해결 방법은 이모지를 넣으려는 칼럼의 3byte UTF-8(utf8mb4) 을 4 byte UTF-8(utf8mb4_unicode_ci) 로 변경하면 된다.
ALTER TABLE 테이블명 MODIFY COLUMN 칼럼명 칼럼타입 CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '칼럼 설명';
그리고 아래와 같이 jdbc 옵션을 추가한다.
useUnicode=true&characterEncoding=utf-8
그러나 저자의 경우 변경해도 같은 오류가 발생하여 확인해보니 사용하는 mysql driver 버전이 너무 낮아 발생하여, 8.대 버전으로 올려 이슈 해결 하였다.
INSERT , SECECT, UPDATE 그냥 이모지(🥶) 그대로 쓰면 된다. (따로 mybatis 에서 작업할 부분은 없다.)
728x90
'SQL' 카테고리의 다른 글
[SQLD] 43회 SQLD 시험 합격 후기 팁 & 공부 방법 (준비 자료 첨부) (1) | 2021.12.26 |
---|
Comments