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
[18112] TBlobStream()함수가 bmReadWrite로 사용할 수 없습니다.
윤병섭 [epochs] 874 읽음    2002-05-02 18:13
안녕하세요^^

DB에서 BLOB형 데이타를 읽어와서 값을 조정한 뒤에 다시 입력하려고 하는데요.

TBlobStream으로 스트림형을 만들때 bmReadWrite로 하면 에러가 나네요.

Project Project2.exe raised exceptoion class EDatabaseError with message 'Query1 : Dataset not in edit or insert mode'. Process stopped. Use Step or Run to continue <-에러메시지입니다

bmRead는 이상없이 잘 되구요..


   if( Key == VK_RETURN )
    {
        //에디트 박스에서 enter키가 눌리면 원하는 id를 찾는 SQL명령을 실행한다.
        Query1->Close();
        Query1->SQL->Clear();
        Query1->SQL->Add("SELECT * FROM CharacterData WHERE Character_Name=:inputName");
        Query1->Prepare();
        Query1->ParamByName("inputName")->AsString = Edit1->Text;
        if( Query1->Prepared ) Query1->Open();
        Query1->Edit();

        //레코드는 1개만 찾아져야 한다.
        if( Query1->RecordCount == 1 )
        {
            //BLOB필드 값을 얻어온다
            MyStream = new TBlobStream( (TBlobField *)Query1->FieldByName("Character_Name"), bmReadWrite);     //<-------------여기가 에러 나는곳 입니다.
            MyStream->ReadBuffer( &g_UserDataGetFromDB, sizeof(USER_DATA) );
            delete MyStream;
        }
        else
        {
            ShowMessage("DB 데이타를 찾지 못했습니다.");
            return;
        }
    }

저는 DB프로그램이 처음이구요 Builder실력도 초보 입니다^^;;

답변 부탁드립니다.

포스가 함께하길...

+ -

관련 글 리스트
18112 TBlobStream()함수가 bmReadWrite로 사용할 수 없습니다. 윤병섭 874 2002/05/02
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.