C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[39070] [질문] ADO Wrapper Class 제작 시..
땅주인 [] 1186 읽음    2005-02-06 23:50
ADO Wrapper 클래스를 만들고 있는데요..

필요할 때 불러다 쓰기만 하려구 하는데요.. 수월하지가 않네요..

다른 것은 그냥 그럭저럭 만들었는데.. 저장 프로시져 호출하는
메소드를 만들고 실행하는 것이 그리 수월치가 않습니다.

저는 그냥  저장 프로시져 실행하는 메소드에 TParameters 객체만
동적으로 생성해서 인자로 넘겨주고 실행하면 결과를 받을
생각인데..그렇게 만들고 실행하면 Access Violation이 나는데..
어디가 잘못된 것인지..전혀 감을 잡지 못하고 있습니다.
Collection 객체를 어떻게 쓰는 지 몰라서 그런 것 같은데요..

아래의 소스를 보시고 조언을 좀 해주세요.. 참고로, 저장 프로시져는
결과값만 리턴하고 결과셋(ResultSet)은 가지지 않습니다.


// 호출하는 루틴
void __fastcall TForm1::Button10Click(TObject *Sender)
{
    OleVariant Value;
    TParameters *pParameters = new TParameters(NULL,NULL);
    pParameters->Clear();
    pParameters->CreateParameter("ActionFlag",ftString,pdInput,0,NULL);    // <= Access Violation 발생
    pParameters->CreateParameter("CarID",ftInteger,pdInput,0,NULL);
    pParameters->CreateParameter("ActionResult",ftInteger,pdOutput,0,&Value);
    pParameters->ParamByName("ActionFlag")->Value   = "U"; // UPDATE
    pParameters->ParamByName("CarID")->Value = 3;

    bool bResult = m_pMyAdo->ExecProc("sp_cCarSetup_UpdateDelete",pParameters);

    int iResult =    pParameters->FindParam("ActionResult")->Value;
}


//-------------------------------------------------------------------------
//    ADO Wrapper class의 ExecProc 메소드 부분
//-------------------------------------------------------------------------
bool MyAdo::ExecProc(AnsiString sProcName, TParameters *pParameters)
{
    if ( m_bOpen == false ) return m_bOpen;

    try {
        m_pProc->ProcedureName = WideString(sProcName);
        m_pProc->Parameters     = pParameters;
        m_pProc->ExecProc();
    } catch (EDatabaseError &e) {
        MessageBox(NULL, e.Message.c_str(),"ADO Connection",MB_OK);
        m_bOpen = false;
    }
    return m_bOpen;
}

+ -

관련 글 리스트
39070 [질문] ADO Wrapper Class 제작 시.. 땅주인 1186 2005/02/06
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.