본문 바로가기
Database/MySQL

MySQL에서 문자셋(캐릭터셋, character set) 바꾸기

by wansdream 2010. 1. 9.
■ 이미 생성된 DATABASE의 문자셋 바꾸기
mysql> SET character_set_client = utf8;
mysql> SET character_set_results = utf8;
mysql> SET character_set_connection = utf8;
mysql> ALTER DATABASE [DB명] DEFAULT CHARACTER SET utf8;

■ 이미 데이터가 들어간 테이블의 문자셋 변환
현재 테이블은 다음과 같은 명령으로 생성되어있다고 가정
mysql> CREATE TABLE [TABLE명] (test varchar(20) collate latin1_general_ci);

현재 테이블에 test 컬럼에 한글 데이터가 들어있는 상태에서 필드를 euckr 로 변경하려면 다음처럼 해야 합니다.
mysql> ALTER TABLE [TABLE명] modify test binary(100);
mysql> ALTER TABLE [TABLE명] modify test varchar(20) collate euckr_korean_ci;
binary 로 바꾸면 문자셋 특성이 사라지기 때문에 이런 변환과정을 거쳐야 한다.
그냥 바꾸면 문자깨짐 현상이 발생한다.


댓글