■ 이미 생성된 DATABASE의 문자셋 바꾸기
■ 이미 데이터가 들어간 테이블의 문자셋 변환
현재 테이블은 다음과 같은 명령으로 생성되어있다고 가정
현재 테이블에 test 컬럼에 한글 데이터가 들어있는 상태에서 필드를 euckr 로 변경하려면 다음처럼 해야 합니다.
그냥 바꾸면 문자깨짐 현상이 발생한다.
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> 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 로 바꾸면 문자셋 특성이 사라지기 때문에 이런 변환과정을 거쳐야 한다.mysql> ALTER TABLE [TABLE명] modify test varchar(20) collate euckr_korean_ci;
그냥 바꾸면 문자깨짐 현상이 발생한다.
'Database > MySQL' 카테고리의 다른 글
MySQL root 암호 초기화 하는 방법 (1) | 2010.01.09 |
---|---|
MySQL에서 탭(TAB)구분자로 데이터를 추출 & 등록 하는방법 (0) | 2010.01.09 |
MySQL 데이터를 특정 문자셋으로 지정하여 백업하기 (0) | 2010.01.09 |
MySQL 최대 접속수 설정하기 (2) | 2010.01.09 |
MySQL CONCAT 함수로 2개 이상의 필드(컬럼) 결합하기 (0) | 2010.01.08 |
MySQL 유저 추가 및 DB설정 (0) | 2009.08.04 |
MySQL Root 패스워드 설정 및 변경 (0) | 2009.08.03 |
리눅스(데비안) 부팅시 자동으로 MySQL 실행시키는 방법 (0) | 2009.08.03 |
리눅스(데비안)에서 MySQL 소스로 설치하기 (0) | 2009.08.03 |
Mysql 소스 컴파일 설치시 에러 해결(checking for termcap functions library... configure: error: No curses/termcap library found.) (0) | 2009.07.27 |
댓글