database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Q&A 27980 게시물 읽기
No. 27980
mysql5 에서 utf8 설정시 한글 입력 문제
작성자
최윤석(ethdemor)
작성일
2009-01-22 20:07ⓒ
2009-01-22 20:11ⓜ
조회수
8,674

안녕하세요


mysql5 버젼을 사용하고 있구요.


cmd - chcp 949 이용 중입니다.


제가 궁금한 것은.. cmd 창에서 작업을 할 때, 모든 세팅이 utf8 로 맞춰져 있어도


한글 입력이 안되더라구요.


그래서 set names euckr 로 설정 시 입력이 잘되구요.


그래서 한가지 궁금한게 생겼는데 여기서 euckr 로 설정해서 자료를 입력해도,


홈페이지 상에서 php 같은걸로 불러오면 충돌이 안생길까요?


요새 utf8이 대세라고 하는데 html, php 설정을 utf8로 잡는다고 치면..


euckr로 입력한 자료는 비정상적으로 될 것 같은데..


애초에 cmd를 이용해서 utf8로 한글을 정상적으로 입력할 방법은 없는건가요?

이 글에 대한 댓글이 총 3건 있습니다.

949 page는 euc-kr과 같다고 보셔도 무방한(사실상 같은) 코드 페이지입니다.

따라서 utf8에는 정상적으로 한글 입력이 가능하지 않겠죠.

 

해보지는 않았지만 utf8으로 하시려면 utf8 페이지인 65001을 사용하시면 될 것 같습니다.

굳이 utf8이 필요하지 않으시다면, 웹 페이지에서 db 값을 가져오기 전에 마찬가지로 set names euckr 한번이면 한글 입출력에 문제가 생기지는 않습니다.

 

 

 

박현우(lqez)님이 2009-01-23 18:38에 작성한 댓글입니다.

답변 감사합니다~ utf8인 65001을 사용할 때 한글 입력 방법을 모르겠네요.

직접 입력할 일이 많을 것 같진 않지만 그래도 알아두면 좋을 것 같은데 아쉽네요

최윤석(ethdemor)님이 2009-01-29 15:50에 작성한 댓글입니다.

답변을 맥에서 쓰느라 cmd 에서 직접 확인하지 못하고 댓글을 달았었는데,
윈도우에서 직접 해보니 65001로 변경했을때, 출력은 되지만 입력은 되지 않더군요.
(게다가 출력도 WM_PAINT 호출 전에는 절반만 찍히는 문제가 있었습니다.)

그래서, 100%는 아니지만, 한글만은 제대로 입출력할 수 있었는데, 다음의 SQL 구문들을 보시면 조금이나마 도움이 되지 않을까 생각합니다. euckr(cp949)의 cmd 창에서, utf8 데이터베이스를 작업하고자 할 때, character_set_client와 character_set_results만 euckr로 변경해주면 읽고/쓰는데 큰 지장이 없습니다. ( 물론 해당 테이블에 한글/일본어/중국어 다 섞여 있으면 안됩니다 ^^; )


결론 : set names euckr 하신 후에 사용하세요.

(처음 접속한 상태)
+--------------------------+---------------------------------------------------------+
| Variable_name            | Value                                                   |
+--------------------------+---------------------------------------------------------+
| character_set_client     | utf8                                                    |
| character_set_connection | utf8                                                    |
| character_set_database   | utf8                                                    |
| character_set_filesystem | binary                                                  |
| character_set_results    | utf8                                                    |
| character_set_server     | utf8                                                    |
| character_set_system     | utf8                                                    |
| character_sets_dir       | C:\Program Files\MySQL\MySQL Server 5.0\share\charsets\ |
+--------------------------+---------------------------------------------------------+

mysql> select name from user where no=1;
+-----------+
| name      |
+-----------+
| 諛뺥쁽??   |
+-----------+
1 row in set (0.00 sec)

mysql> set character_set_results='euckr';
Query OK, 0 rows affected (0.00 sec)

mysql> select name from user where no=1;
+--------+
| name   |
+--------+
| 박현우       |
+--------+
1 row in set (0.00 sec)

mysql> update user set name='박현우2' where no=1;
ERROR 1366 (HY000): Incorrect string value: '\xB9\xDA\xC7\xF6\xBF\xEC...' for column 'name' at row 1
mysql> set character_set_client='euckr';
Query OK, 0 rows affected (0.00 sec)

mysql> update user set name='박현우2' where no=1;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> select name from user where no=1;
+---------+
| name    |
+---------+
| 박현우2       |
+---------+
1 row in set (0.00 sec)

mysql>

박현우(lqez)님이 2009-01-29 21:42에 작성한 댓글입니다.
이 댓글은 2009-01-29 21:51에 마지막으로 수정되었습니다.
[Top]
No.
제목
작성자
작성일
조회
27983mysql 4.1.x 에서 5.1.X 로 업그레이드 [1]
비의비
2009-01-28
4664
27982[질문] mysql 복원하고나니 한글이 다 깨지네요. [1]
이준식
2009-01-23
5149
27981하나의 컬럼만 제외하고 select 하는 방법 [1]
손담비
2009-01-23
8842
27980mysql5 에서 utf8 설정시 한글 입력 문제 [3]
최윤석
2009-01-22
8674
27979mysql 질문있습니다. [1]
신봉길
2009-01-22
4702
27978BBB테이블에서 select 한것을 AAA테이블에 그래도 insert 하고자할때 [1]
주윤발
2009-01-22
4884
27977레코드 존재 여부에따라 insert 또는 update를 결정해야 하는경우 [1]
전지현
2009-01-21
4959
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.032초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다