Background Image

FORUM

조회 수 6962 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

window 7  32bit,   64bit 동일

ODBC Driver : CUBRID_ODBC-9.3.0-win32-x64

                     CUBRID-Windows-x64-9.3.0.0206.exe

                     CUBRID-Windows-x86-9.3.0.0206.exe

CUBRID TOOL Ver. :   CUBRIDManager-2014-build-0651-windows-i386.exe


응용 환경(API) : 

    엑셀 VBScript 를 통해  ODBC 로 연결  : 



오류 내용 :  ODBC로 접속할 경우  UTF-8로 접속을 해도    char(1) 을 byte 로 인식하고 있은 문제인듯 함


[1] ------ table and data   script ------

CREATE TABLE  aTemp(  a CHAR(1), nm VARCHAR(3)) ; 

INSERT INTO aTemp(a, nm) VALUES( '남', '홍길동'), ('여','신사임당');

COMMIT;


[2] CUBRID manager 를 통해서 조회 할 경우 

SELECT * FROM aTemp;  


남, 홍길동

여, 신사임 

<< 정상 출력었음>>




[3] 그러나 ODBC를 통해 조회할 경우 : 깨져서 나오고 있음. 

SELECT * FROM aTemp

?, 홍?

?, 신? 


----------------  VBScript --------------------

Option Explicit


Public adoconn As ADODB.Connection

Public rs      As ADODB.Recordset


Public Sub odbc_utf8_test()

    Dim constr As String

    Dim n As Long


    ' connection

    constr = "Driver={CUBRID Driver};server=localhost;port=33000;uid=dba;pwd=dba!00;db_name=school;charset=UTF-8;"

    Set adoconn = New ADODB.Connection

    adoconn.connectionString = constr

    adoconn.ConnectionTimeout = 10

    adoconn.Mode = adModeReadWrite

    adoconn.CursorLocation = adUseClient

    adoconn.open


    ' connection ok   then  execute SQL 

    Set rs = adoconn.Execute("select * from aTemp")

    

    If rs.EOF Then

    

    Else

        For n = 1 To rs.RecordCount Step 1


            ActiveSheet.Cells(n, 1) = rs("a")

            ActiveSheet.Cells(n, 2) = rs("nm")

Debug.Print rs("a"), rs("nm")

            rs.MoveNext

        Next

    End If

    

    Set rs = Nothing


    adoconn.Close

    Set adoconn = Nothing

End Sub




[5] DB 성성과  {en_US.UTF-8,  ko_KR.UTF-8}  X   ODBC접속{ko_KR.UTF-8, UTF-8}   로 시도 했으나 동일한 오류 결과를 얻었음. 


DB성생 : ko_KR.UTF-8   , constr 의 charset=UTF-8  : 동일결과

DB성생 : ko_KR.UTF-8   , constr 의 charset=ko_KR.UTF-8  : 동일결과

DB성생 : en_US.UTF-8   , constr 의 charset=UTF-8  : 동일결과






질문 등록 시 다음의 내용을 꼭 기입하여 주세요.

OS
Window7 32bit, Linux 64bit 등
CUBRID Ver.
[cubrid_rel] 수행 결과
CUBRID TOOL Ver.
[도움말]-[버전정보] 확인
응용 환경(API)
java, php, odbc 등 입력

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

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

  • ?
    정만영 2014.12.23 01:28

    안녕하세요.


    VBScript 사용 문제점은 내부 재현 후 답변 드리겠습니다.


    큐브리드를 이용해 주셔서 감사합니다.


  • ?
    김승훈 2014.12.23 23:48

    안녕하세요. 

    큐브리드를 이용해 주셔서 감사합니다.


    해당 문제는 ODBC 드라이버가 charset을 지원하지 않기 때문에 발생하는 문제로 보입니다.

    드라이버가 charset을 지원하지 않으면 드라이버 매니저에서 변환을 해주게 되는데,

    precision으로 잘라버려서 잘못되는것 같습니다.

    일단은 char(1) 형태가 아닌 varchar(length)로 저장하려는 바이트수만큼 지정해서 사용하시길 부탁드립니다.


    감사합니다.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 52
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4458
875 OLE DB에서 자바 저장프로시져 사용 1 secret shadow54 2010.07.19 8
874 OLE DB에서 자바 저장프로시져 사용 1 secret shadow54 2010.07.20 8
873 ODBC에서 Collection DataType의 한글깨짐현상 - 재등록 2 separk 2017.01.03 15188
872 ODBC에서 Collection DataType의 한글깨짐현상 file separk 2016.12.22 14509
871 ODBC에 ConnectionString 생성하여 접속 후 Disconnect시, 수초/수분후 Error 발생 file separk 2016.12.30 15252
870 ODBC를 사용해서 디비작업이 안되요 1 요한 2010.04.15 11142
869 ODBC를 통해 데이터 조회시 UTF8로 저장되어 있는 데이터를 읽어오려면 어떻게 해야 하나요. 3 인류의위기 2010.11.18 8006
868 ODBC로 연결을 했는데 자꾸 E_FAIL이 뜹니다.제발 답변좀 달아주세요!!개인이라고 신경 안써주시나? 1 JKwang2 2015.03.12 9193
867 ODBC, OLEDB 접속후, ADO 프로그래밍을 했을 때.. 1 lkim 2011.06.09 13582
866 ODBC, OLEDB 별도 설치 방법좀 알려주세요... 4 배우자.. 2009.08.16 10177
865 ODBC 핸들로 조회시 조회 갯수 재한? 4 ApiClasser 2009.04.01 11461
864 ODBC 접속시 Timeout 설정 불가? 2 separk 2016.12.30 16040
863 ODBC 이용 데이터 입력 중에 ... 3 ApiClasser 2009.02.16 12630
862 ODBC 이용 SQLHSTMT 다중으로 사용하는게 불가능한가요 ? 2 ApiClasser 2009.05.04 16564
861 ODBC 오토커밋 off에 관련된 문의 1 세스카 2012.05.23 11255
860 ODBC 연결 방법 3 포세이돈 2009.12.24 11889
859 ODBC 에서 Fetch 할때 메모리 액세스 위반이 발생합니다. 1 ApiClasser 2009.09.01 12635
858 ODBC 에러 물어보겟습니다. 2 세스카 2012.03.21 10253
857 ODBC 문의입니다. 1 file 탱군이 2013.07.26 10246
» ODBC 를 통할 경우 텍스트 잘림 2 file OO준 2014.12.22 6962
Board Pagination Prev 1 ... 152 153 154 155 156 157 158 159 160 161 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales