FORUM

?

단축키

Prev이전 문서

Next다음 문서

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

아래와 같이 처리했는데 업로드가 안됩니다.

업로드/다운로드하는 방법점 갈켜주세요..

pValueBuffer가 데이터 nWriteSize가 크기입니다.
---------------------------------------------------------------------------------------------------------------------------------------------------
영상 업로드

CString strQueryBegin, strQueryEnd;
strQueryBegin.Format("INSERT photo(image) VALUES('");
strQueryEnd.Format("')");

const ULONG nQueryBeginLength  = strQueryBegin.GetLength();
const ULONG nValueLength          = nWriteSize
const ULONG nQueryEndLength    = strQueryEnd.GetLength();
const ULONG nQueryLength          = nQueryBeginLength+nValueLength+nQueryEndLength;

char* pQueryBuffer = new char[nQueryLength+100];

memcpy(pQueryBuffer, strQueryBegin, nQueryBeginLength);
memcpy(pQueryBuffer + nQueryBeginLength, pValueBuffer, nValueLength);
memcpy(pQueryBuffer + (nQueryBeginLength + nValueLength), strQueryEnd, nQueryEndLength);

int nRes = m_dbCubrid.execDML(pQueryBuffer);
---------------------------------------------------------------------------------------------------------------------------------------------------

int execDML(LPCTSTR szSQL)
{
 if( m_conn <= 0 )
 {
  sprintf(m_szBuf, "no open db");
  return -1;
 }

 int req, res;

 // 질의 컴파일을 수행한다.
 if ((req = cci_prepare(m_conn, (char*)szSQL, 0, &m_error)) < 0) {
  // 에러 발생시 에러 코드와 에러메세지등을 출력한다.
  sprintf(m_szBuf, "prepare error[%d] %sn SQL: %sn", m_error.err_code, m_error.err_msg, szSQL);
  // 에러가 발생하였으므로 롤백처리한다
  cci_end_tran(m_conn, CCI_TRAN_ROLLBACK, &m_error);

  return -1;
 }

 // 질의를 수행한다.
 if ((res = cci_execute(req, 0, 0, &m_error)) < 0) {
  sprintf(m_szBuf, "prepare error[%d] %sn SQL: %sn", m_error.err_code, m_error.err_msg, szSQL);
  cci_end_tran(m_conn, CCI_TRAN_ROLLBACK, &m_error);
  return -1;
 }

 // 에러없이 정상 처리되었으므로 커밋 처리한다.
 if (cci_end_tran(m_conn, CCI_TRAN_COMMIT, &m_error) < 0) {
  // 입력중 커밋 에러이므로 알려야 한다.
  sprintf(m_szBuf, "COMMIT ERROR [%d] %sn", m_error.err_code, m_error.err_msg);
  return -1;
 }

 return 0;
}

  • ?
    anonymous 2009.09.25 04:43
    pValueBuffer의 데이터가 binary 라면 string으로 변환하여 SQL로 만들어야 합니다. bit string은 B'0101..' 과 같은 형식으로 이루어져야 합니다. CUBRID  매뉴얼 bit 데이터 타입 부분에 해당 내용이 있습니다.

    데이터의 크기가 크다면 SQL로 변환하여 insert 하는 것은 비효율적입니다. CCI의 bind ( cci_bind() )함수를 사용하시길 권합니다. 


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 11 admin 2024.04.23 45250
369 windows 2008 64비트에서 큐브리드 매니저 실행이 안되네요 3 file 지니보이 2009.10.15 12395
368 cubrid 설치 후 서버 기동 문제 3 너와나 2009.10.13 11850
367 loaddb 에러 발생. 2 스팅거 2009.10.09 11483
366 컴파일 할 때 오류 cannot find -lcurses 13 아주가끔은 2009.10.08 12956
365 클라이언트에서 원격지 DB로의 접속이 되지 않습니다... 9 김동진81 2009.10.08 15504
364 7.1 -> 2008로 업그레이드 하면 문제가 없을까요? 3 헬리 2009.10.07 10695
363 db 초보자 입니다. 설치가 않되 질문 합니다. 2 watertree 2009.10.06 10371
362 CUBRIDResultSetMetaData 에 관한 질문.. 1 눈꽃 2009.10.06 10850
361 order siblings by 문의 1 유쓰 2009.10.06 22002
360 CUBRID 2008 R 2.0 은 php모듈이 없나요? 1 oneorzero 2009.10.06 10701
359 트리거 delete on 문법 문의 1 aliveJune 2009.10.05 11611
358 윈도우에서 백업받은 DB를 리눅스 환경에서 복구 할수 있나요? 1 newbie 2009.10.03 13314
357 현재 큐브리드 7.1 을 사용하고 있는데요 1 헬리 2009.10.01 10036
356 테이블 조인 후, 또 정렬 후 결과값들을 게시판 페이징 처리할 때... 3 조상필 2009.10.01 19876
355 테이블 컬럼에 COMMENT 추가는 어떻게 하나요? 1 파나순 2009.09.29 15037
354 아이콘 활성 유무?? 4 file 차가워여 2009.09.29 10058
353 cannot communicate with the broker 7 차가워여 2009.09.28 21026
» 영상 데이터를 bit varying에 업로드/다운로드 하는 방법점..(cci_api) 1 pictions 2009.09.24 11340
351 큐브리드매니저에서 값을 바로 수정하기는 어려운가요? 2 file 고영진 2009.09.24 14612
350 큐브리드매니저에서 데이터 내려받기시 컬럼명 같이 저장기능 추가 2 file 고영진 2009.09.24 13849
Board Pagination Prev 1 ... 187 188 189 190 191 192 193 194 195 196 ... 210 Next
/ 210

Contact Cubrid

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

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

나눔고딕 사이트로 가기

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5