반응형
[C#] MySQL 데이터 저장시 한글이 깨질 때 |
환경 : Visual Studio 2012 |
C# 에서 MySQL Connector 다운받아 데이터를 저장하고자 할 때 한글이 깨지는 경우가 있습니다. 아래는 그 해결 방법입니다.
▼ 먼저 MySQL 셋팅을 바꿔야 합니다. 테이블 생성할 때 와 필드 생성할 때 기본값이 아닌UTF8 로 해줍니다. 기본은 latin1_swedish_ci 로 되어있는데 VARCHAR 이나 TEXT 일때 필드 뿐만 아니라 테이블의 Collation 속성 또한 utf8_general_ci 으로 맞춥니다.
▼ 이제 C# 에서 접속해 데이터를 보낼 때 연결 문자열에 CharSet = utf8 을 추가합니다.
String strConn = "Server=localhost;Database=*****;" + "Uid=*****;Pwd=*****;CharSet=utf8;";
▼ 보내는 곳과 받는 쪽이 같은 인코드를 사용해야 한글이 깨지지 않겠죠. 소스에서 아래 처럼 INSERT 문을 날려 보았습니다. 정상적으로 셋팅이 되었다면 “김삿갓” 이 깨지지 않겠죠.
conn.Open(); String sql = "INSERT INTO members (id, pwd, name) " + "VALUES ('gon', '111', '김삿갓')";
▼ MySQL DB 에 들어가서 보니 깨지지 않고 제대로 들어가 있네요. 이렇게 해서 한글이 깨질 때 처리 하는 방법에 대해 알아 보았습니다.
반응형
'기타 언어 > C# & MFC' 카테고리의 다른 글
[C#] HashTable 사용방법과 예제 모음 (0) | 2015.02.24 |
---|---|
[C#] 다중폼(WinForms MID) 자식윈도우 사이즈 조절하기 (0) | 2015.02.07 |
[C#] MDI 폼에서 자식폼이 열어 있을 때 앞으로 보내기 (0) | 2015.01.31 |
[C#] MySQL 연결후 데이터 저장, 조회 하기 (2) | 2015.01.24 |
[Visual C#] Environment 를 통해 시스템 정보, OS 버전알아오기 (0) | 2014.11.25 |
Visual C# 웹브라우저 WebBrowser 를 이용해 HTML 소스 가져오기 (1) | 2014.10.18 |
Visual C# 두개의 폼간 데이터 주고 받기위해 delegate, event 사용 (0) | 2014.10.14 |
Visusl C# Windows Forms Application 생성후 메지지 박스 표시하기 (0) | 2014.10.11 |