728x90

mysql에서 charset 관련해서 흔히 실수하는 부분이 있는데, 해당 테이블의 charset을 지정해놓으면 해당 컬럼도 같은 chatset으로 될꺼라는 생각이다.

안타깝게도.. mysql은 해당 데이터베이스, 테이블, 컬럼 별로 전부 charset을 다르게 지정할 수 있고, 덕분에 하나를 바꾼다고 다른것도 같이 바뀌지도 않는다.


 

우선 아래와 같이 하면, 해당 컬럼의 charset을 바꿀수 있다.


utf-8일때는 utf8 , utf8_general_ci


ALTER TABLE 테이블명 MODIFY COLUMN 컬럼 VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci


euc-kr일때는 euckr , euckr_korean_ci


그리고 위와 같이 하나하나씩 바꾸기가 귀찮다면, 아래와 같이 해주면, 해당 테이블과 컬럼의 charset이 모두다 원하는 charset으로 변경된다.


 

alter table 테이블명 convert to character set utf8;

728x90

'DB' 카테고리의 다른 글

mysql add_date  (1) 2014.06.12
mysql date_format  (0) 2014.06.12
debian raspbian can't connect to mysql server on (10061)  (0) 2014.05.10
mysql timestamp datetime  (0) 2014.05.10
웹정보시스템  (0) 2014.05.01

+ Recent posts