mysql 에서 이모지(emoji)를 사용하려면? utf8mb4
mysql 에서 이모지를 사용하려면?
- HTML 엔터티 모양으로 변환해서 저장.
- 🎗😥 (이런 모양) -> (이렇게 보인다.)
-
이모지 이미지를 보고 싶다면. http://emojipedia.org/reminder-ribbon/
- utf8mb4로 테이블 인코딩 형식(CHARSET) 변경.
- MySQL 5.5.3 에서 utf8mb4 가 추가됨.
-
유니코드 4바이트 지원 utf-8 charset
- MySQL의 utf-8은 3바이트 기반임. 그 때는 3바이트로 모든 글자를 나타낼 수 있었음.
-
문제는 뒤에 이모지(emoji)라는것이 툭 튀어나왔음. (4바이트까지 사용함)
- 바이너리 필드 사용
- varbinary
- BLOB
-
이들 값을 문자열 체크를 안한다.
- 누가 잘못했는가?
- MySQL쪽에서 실수 한 것이 맞음.
- 유니코드는 4바이트 기반인데, MySQL쪽에서 3바이트 만으로 되네, 그러면 3바이트로만 지원해야지.. 해서 utf8의 charset이 4바이트의 글자를 지원 못하는 문제가 발생됨.