티스토리 뷰

Overview

업무 중에 대외 금융기관과 Encoding을 맞출 일이 있어서 이렇게 방법을 남긴다.

EUC-KR 은 한글 2byte 이고, UTF-8 은 한글 3byte 인데 문자열 길이가 달라서 아래와 같이 확인했다.

 

사용법

MySQL 기준 CONVERT 함수를 아래와 같이 사용한다. 

SELECT CONVERT('메세지' USING 'CharacterSet');

 

테스트

set @target = '안녕하세요 123 ABC' ;

SELECT LENGTH(CONVERT(@target USING 'euckr')) AS LENGTH -- euckr
UNION ALL
SELECT LENGTH(CONVERT(@target USING 'utf8mb4')) AS LENGTH; -- utf8

사용해보기

SELECT 
	u.name
	, LENGTH(CONVERT(u.name USING 'euckr')) as 'euc-kr'
    , LENGTH(CONVERT(u.name USING 'utf8mb4')) as 'utf-8'
FROM User u;

 

Reference

그 외 유용하게 쓰고있는 Encoding 별 사이트를 공유합니다.

 

 

byte checker

◈ 500자 제한의 예 한글을 3byte로 계산하는 경우는 1500byte로 제한 한글을 2byte로 계산하는 경우는 1000byte로 제한 ◈ 1000자 제한의 예 한글을 3byte로 계산하는 경우는 3000byte로 제한 한글을 2byte로 계

trsketch.dothome.co.kr

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함
Total
Today
Yesterday