8.3.1 --> 9.2 업그레이드 후 한글 깨짐. ( vb6.0 + MS949 )

by 한종희 posted Dec 28, 2013

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
Window7 32bit
CUBRID Ver.9
  9.2.
CUBRID TOOL Ver.
[도움말]-[버전정보] 확인
응용 환경(API)
  VB6 , OleDB (9.2 32bit), ODBC(9.2 32bit)

* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------

8.1.4 / 8.3.1 사용중인데

disk full 로 인한  - 실제는 disk full이 아닌데 -  Invaild Index 오류가 빈번한 관계로 이번에 9.2로 업그레이드를 테스트 했습니다.

 

기존 cubrid 사용시 환경 매개 변수에 대해서 아무런 수정을 전혀 하지 않고 기본값을 사용을 했습니다. 케릭터셋 값 조차도.

또한 vb 어플리캐이션에서도 어떠한 한글 인코등 처리를 하지 않았습니다.

 

이번 업그레이드시 create db를 할 경우 로캘을 지정해야 한다고 해서 기존 cubrid db에서 character set이 어떻게 지정되어 있는지 확인해 보니 MS949로 표시가 되어 있었습니다.

 

도움말에서 9.2  CREATEDB 에서 캐릭터셋 지정하는 곳에 MS949가 없어서 거기에 표시된 CHARACTER SET을 전부 테스트 해봤습니다.

 

CUBRID MANAGER에서는 한글이 정상으로 보이는데(ms949 / utf8 모두한글 안깨지고 보임) 기존 프로그램(VB로 만들어진) 에서는

한글이 깨져서 나옵니다.

게시판에서 찾아보니 cubrid에서는 인코딩을 별도로 진행하지 않는다고 설명을 봤지만...

 

1.  마찬가지로 별도의 인코딩 작업없이 사용하던 프로그램이 db업글 후 한글이 깨지는 문제가 왜 발생하는 것일까요?????

2.  MS949는 케릭터셋을 어떤걸 지정해야 하나요???

 

3. 가장 중요한것...한글이 안깨질려면 어떻게 해야 할까요?  

 

참고로 VB에서 사용중인  ConnectString 입니다. 

            connString = "Provider = CUBRIDProvider;" & _
                             "Data Source = " & DbName & ";" & _
                             "Location = " & DbSvrName & ";" & _
                             "User ID = " & Uid & ";" & _
                             "Password =" & Pswd & ";" & _
                             "Port = 30000;Fetch Size = 100"