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 문에 포함 될때만
이런 에러가 발생 합니다. 답변 부탁 드립니다.
|