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
운영게시판
최근게시물
CUBRID Q&A 507 게시물 읽기
No. 507
Q.오류에 관하여...
작성자
이승훈
작성일
2007-08-27 20:03
조회수
3,069

VC++8.0 에서 네이티브 코드 방식으로 ADO를 이용해 큐브리드DB를 사용 중 입니다

 

다음과 같이 테이블생을 생성하고

 

CREATE TABLE TBL_EVENTHISTORY

(

    TRANSDATE   VARCHAR(8)  NOT NULL,

    TRANSTIME   VARCHAR(6)  NOT NULL,

    REPEATORID  VARCHAR(3)  NOT NULL,

    COMMANDID   VARCHAR(10) NOT NULL,  

    RACKID      VARCHAR(20),

    MCUID       VARCHAR(20),

    SERIALNO    VARCHAR(20),

    LOCATIONNO  VARCHAR(20),

    LOCATIONNM  VARCHAR(20),

    USERID      VARCHAR(20),

    EVENTDATA   VARCHAR(1000),

    CONSTRAINT TBL_EVENTHISTORY_PK1 PRIMARY KEY (TRANSDATE, TRANSTIME, REPEATORID, COMMANDID)    

);

 

EVENTDATA 라는 컬럼에는 다음과 같은 데이타 8개가 존재 합니다.

 

\"111111111111111111111111111111111111111111111111111111111111111111111111111111\"

 

\"00000001000000000000100000000001\"

 

\"     0.0000.0400.0200.000000.000.00000.000.00\"

 

\"53020070706\"

 

\"20070826020138\"

 

\"1\"

 

\"1111\"

 

\"+31.0-10+40-50-50-00-15-20+00NN181/0NNN-200+00-15-20+40+07-20+00PP0010/+00NNN0+00000.000000NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN001N\"

 

그리고 다음과 같은 query문을 실행 시키면

 

select TRANSDATE, TRANSTIME, REPEATORID, COMMANDID, RACKID, MCUID, SERIALNO, LOCATIONNO, LOCATIONNM, USERID, EVENTDATA from TBL_EVENTHISTORY where TRANSDATE between decode(\'20070825\', \'\', TRANSDATE, \'20070825\') and decode(\'20070827\', \'\', TRANSDATE, \'20070827\') and   TRANSTIME between decode(\'\', \'\', TRANSTIME, \'\') and decode(\'\', \'\', TRANSTIME, \'\')

 

comutil.h 에서 ADO 처리 중에 다음과 같은 함수에서 에러가 발생 합니다.

 

// Extract a wchar_t*

//

inline _bstr_t::operator wchar_t*() const throw()

{

    return const_cast<wchar_t*>((m_Data != NULL) ? m_Data->GetWString() : NULL);

}

 

query 를 이리저리 바꾸어 본 결고 EVENTDATA 라는 컬럼이 select 문에 포함 될때만

 

이런 에러가 발생 합니다. 답변 부탁 드립니다.

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

안녕하세요.

우선 어떤 종류의 에러가 나는지 에러메세지를 알려주시면 감사하겠읍니다.

또한 데이터를 보니 마지막 데이터의 마지막에 \" 가 빠져있는데 이는 아마도 게시판 입력과정에서 빠진 것이겠지요?

8개의 데이터중 1개씩 select 해 보시면서 에러를 추적하면 어느 데이터 때문에 문제가 생기는지 좀더 자세히 알 수 있을 것 같습니다. 1개씩 하는 방법은 간단히 where 절에 rownum=1 그다음에는 rownum=2, ... 이런식으로 하면 될 것입니다.

 

>VARCHAR(200) 을 최대로 컬럼을 여러개 만들어서 나누어 넣은 다음 select 하니 잘 되내요 ㅡ,,ㅡ

>

>//////////////////////////////////////////////////////////////////////////////

>VC++8.0 에서 네이티브 코드 방식으로 ADO를 이용해 큐브리드DB를 사용 중 입니다

>

>다음과 같이 테이블생을 생성하고

>

>CREATE TABLE TBL_EVENTHISTORY

>(

>    TRANSDATE   VARCHAR(8)  NOT NULL,

>    TRANSTIME   VARCHAR(6)  NOT NULL,

>    REPEATORID  VARCHAR(3)  NOT NULL,

>    COMMANDID   VARCHAR(10) NOT NULL,  

>    RACKID      VARCHAR(20),

>    MCUID       VARCHAR(20),

>    SERIALNO    VARCHAR(20),

>    LOCATIONNO  VARCHAR(20),

>    LOCATIONNM  VARCHAR(20),

>    USERID      VARCHAR(20),

>    EVENTDATA   VARCHAR(1000),

>    CONSTRAINT TBL_EVENTHISTORY_PK1 PRIMARY KEY (TRANSDATE, TRANSTIME, REPEATORID, COMMANDID)    

>);

>

>EVENTDATA 라는 컬럼에는 다음과 같은 데이타 8개가 존재 합니다.

>

>\"111111111111111111111111111111111111111111111111111111111111111111111111111111\"

>

>\"00000001000000000000100000000001\"

>

>\"     0.0000.0400.0200.000000.000.00000.000.00\"

>

>\"53020070706\"

>

>\"20070826020138\"

>

>\"1\"

>

>\"1111\"

>

>\"+31.0-10+40-50-50-00-15-20+00NN181/0NNN-200+00-15-20+40+07-20+00PP0010/+00NNN0+00000.000000NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN001N\"

>

>그리고 다음과 같은 query문을 실행 시키면

>

>select TRANSDATE, TRANSTIME, REPEATORID, COMMANDID, RACKID, MCUID, SERIALNO, LOCATIONNO, LOCATIONNM, USERID, EVENTDATA from TBL_EVENTHISTORY where TRANSDATE between decode(\'20070825\', \'\', TRANSDATE, \'20070825\') and decode(\'20070827\', \'\', TRANSDATE, \'20070827\') and   TRANSTIME between decode(\'\', \'\', TRANSTIME, \'\') and decode(\'\', \'\', TRANSTIME, \'\')

>

>comutil.h 에서 ADO 처리 중에 다음과 같은 함수에서 에러가 발생 합니다.

>

>// Extract a wchar_t*

>//

>inline _bstr_t::operator wchar_t*() const throw()

>{

>    return const_cast<wchar_t*>((m_Data != NULL) ? m_Data->GetWString() : NULL);

>}

>

>query 를 이리저리 바꾸어 본 결고 EVENTDATA 라는 컬럼이 select 문에 포함 될때만

>

>이런 에러가 발생 합니다. 답변 부탁 드립니다.

 

남재우님이 2007-08-27 22:53에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
510Q.sql구문(!=) [1]
고운혁
2007-08-29
2892
509Q.리눅스에서 큐브리드인가 뭔가 설치 [1]
test
2007-08-28
2906
508Q.cci_schema_info 에서 IS_KEY가 무조건 0만 나옵니다. [1]
이경록
2007-08-28
2862
507Q.오류에 관하여... [1]
이승훈
2007-08-27
3069
506Q.큐브리드 매니져-&gt;클래스편집-&gt;type변경에 대한 질문 [1]
안성민
2007-08-27
3102
505Q.큐브리드 용도 질문. [1]
정태곤
2007-08-25
2965
504Q.[긴급]Cubrid 6.5를 사용하는 데 Window가 깨어져서 부팅이 안 되는데 조치방법 문의 [1]
민병천
2007-08-25
2904
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.020초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다