본문 바로가기

IT

MySQL에서 한글 저장을 위한 UTF-8 CharSet 으로 DB 구성하기

반응형

 한글을 저장하는 방법으로는 UTF-8 과 EUC-KR 문자집합을 사용할 수 있으나, 기왕이면 다국어를 완전히 지원하는 UTF-8을 사용하는 편이 나을 것으로 생각된다.


 기본적으로 MySQL의 DB, Table에 대한 Collation 은 아쉽게도 아직도 Latin1 이 기본값이다.


 그럼 이미 만들어 놓은 DB 스키마와 테이블, 칼럼등에 대해서 UTF-8을 적용하는 방법을 적어본다.


1. DB에 UTF-8 CharSet, Collation 적용하기


ALTER DATABASE 데이타베이스명 CHARACTER SET utf8 COLLATE utf8_general_ci;



2. 테이블에 UTF-8 CharSet, Collation 적용하기


ALTER TABLE 테이블명 CHARACTER SET utf8 COLLATE utf8_general_ci;


또는 테이블 생성시 값을 지정할 수 있다.


CREATE DATABASE 데이타베이스명 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;


3. 테이블의 문자열을 저장하는 칼럼 수정하기



위와 같이 칼럼을 선택하면 문자열을 저장하는 칼럼은 Collation을 지정할 수 있다. 2번에서 이미 테이블의 Collation, CharSet을 UTF-8 로 지정했기때문에 Table Default를 선택해주고, Apply 해주면 된다.


끝.

반응형