Background Image

FORUM

조회 수 12635 추천 수 0 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
ODBC 사용할때 발생하는 오류 입니다.
컴파일은 VS2008 / SDK 6.0버전 으로 작성을 하고 있구요 ...유니코드로 컴파일 중입니다. 

서버에 테이블이 만들어 져 있는지를 확인하기 위해서 일단 다음과 같은 질의 문을 전송하였습니다.
( SELECT 질의 할때는 확인해보지 않았습니다. )

SQLTCHAR* StatementText = _T("TABLE");
SQLTables(m_hstmt, NULL, 0, NULL, 0, NULL, 0, StatementText, _tcslen(StatementText) );
SQLFetch(m_hstmt); <-- 이부분에서 메모리 액세스 위반이 발생합니다.

두번째 오류는 위 문장을 실행하고 결과을 얻는 부분에서 발생합니다.
아래 두문장중 하나라도 결과 값을 가져와야 하는데 결과를 전혀 얻을수 었습니다.

SQLUSMALLINT ColumnNumber = 3; // 테이블 이름
::SQLGetData( m_hstmt, ColumnNumber, SQL_C_WCHAR, (SQLPOINTER)lpstr, cchamx*sizeof(WHAR), NULL );
::SQLGetData( m_hstmt, ColumnNumber, SQL_C_CHAR, (SQLPOINTER)lpstr, cchamx*sizeof(CHAR), NULL );

그래서 임시로 바인드 해보았습니다 ..
음. 이번에는 바인드 된 내용이 ANSI 코드로 받아 지더군요 ..
SQL_C_WCHAR 로 설정해도 문자열 코딩변환과정을 거치지 않는것 같네요 ...
큐브리드가 코드 결정은 응용프로그램에서 처리한다고 하지만...
음.. 이러게 되면 손이 많이 가는데요 .. 테이블 구성상 ANSI 로 작성을 했다 해도 코드 변환 과정을 거쳐 결과를 얻어야 하는건 아닐까 싶은데.... 이것점...

::SQLBindCol( m_hstmt, ColumnNumber, SQL_C_WCHAR, (SQLPOINTER)lpstr, cchamx, &StrLen_or_Ind );

큐브리드 2008  R1.4로  테스트 했던 프로그램 에서는 발생하지 않았던 오류가
큐브리드 2008  R2.0 버전에서 발생하네요 .
이것 때문에 작업이 진행이 안되네요 ...

이것 관련해서 버전이 번경되면서 수정된 내용이 있나요 ?
그리고 수정되면서 이전버전에 사용된 부분하고 호환성이 안되는 부분이 있는지요 ?
음. 아니면 라이브러리 버전이 다른가요?

추가로 오래전에 문의한 내용인데 어떻게 진행이 됬는지 몰라서 적어 봅니다.
1 컨넥션 / 다중 질의 핸드로 작성된 부분에서 질의 핸들간에 조회결과 간섭에 대한 내용인데요 ..
http://www.cubrid.com/zbxe/44668 <- 이 내용에 대한 답이 어떻게 되었는지도 알려주세요.
  • ?
    웁쓰 2009.09.02 19:55

    이것 관련해서 버전이 변경되면서 수정된 내용이 있나요 ?

    -> 1.x -> 2.0 으로 버전업 하면서 크게 변경된 사항은 64bit 지원 사항이 있었습니다.
    그에 따라서 미처 확인 하지 못한 버그인것 같습니다.

    그리고 수정되면서 이전버전에 사용된 부분하고 호환성이 안되는 부분이 있는지요 ?

    -> 이전 버전과 호환됩니다. 사유는 위의 답변과 같습니다.

    음. 아니면 라이브러리 버전이 다른가요?

    -> 버전이 틀리니 핵심 라이브러리(CCI)는 다릅 있습니다. 하지만 ODBC자체는 CCI를 MS ODBC Spec에
    맞게 Implement 한것이니 특별히 문제될 사항은 없습니다.

    좋은 지적 감사 드립니다. 앞으로 제품 출시 하며 더 주위 하도록 하겠습니다.
    현재 개발자가 문제 확인후 버그 사냥에 나섰습니다. 최대한 빨리 사용하실수 있도록 버그 패치 하도록 하겠습니다.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 43
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4458
3993 db에 저장되어 있는 CLOB 데이터의 위치가 어디로 저장되는지 확인하는 방법이 있을까요? 자바천재 2024.04.25 6
3992 큐브리드 서비스 시작이 안됩니다. file 황남빵 2024.04.24 12
3991 큐브리드 JDBC 드라이버 XA문의 및 큐브리드 분산트랜잭션(XA) 지원 문의 1 몽키스패너 2024.04.24 19
3990 group_concat 변수 리턴 관련... 1 썬더기 2024.04.22 22
3989 기 DB에서 테이블 정보만 가져와서 다른 DB에 생성 1 바다소금 2024.04.22 17
3988 큐브리드 매니저 속도 문의 연동테스트용 2024.04.22 10
3987 cubrid count 속 2 kanin 2024.04.19 27
3986 cubrid 10.1 데이터 덮어쓰기 질문입니다. 4 ysk96 2024.04.18 51
3985 ACTION 명령어? 예약어? 1 투투투투기기 2024.04.17 20
3984 sql 구문 사용시 데이터 타입 decimal일 경우 1 투투투투기기 2024.04.11 30
3983 Regexp_count 4 SEO 2024.04.09 66
3982 큐브리드 메모리 오류 관련 질문 2 file 뚜벅뚜벅 2024.04.09 64
3981 큐브리드 실행이 안되는 이슈 1 file 최현욱 2024.04.09 40
3980 unloaddb & loaddb 관련 질문이 있습니다. 1 543534512 2024.04.06 46
3979 mac m1 다운로드 오류 1 file 혜주냉면 2024.04.05 41
3978 list 함수로 만든 sequence type을 varchar로 변환 문의 1 플레이어블 2024.04.04 36
3977 DECODE, CASE WHEN 사용법 문의 2 핑크팬더 2024.04.03 55
3976 schema 파일 loaddb - 스키마 정보 중복오류 문의 4 daay 2024.03.21 91
3975 object to string 4 네오랜덤 2024.03.20 68
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 200 Next
/ 200

Contact Cubrid

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