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

델파이 Q&A
Delphi Programming Q&A
[2235] [답변] TIGOON/ Blob Data Save
apoyando [ ] 1601 읽음    1998-04-04 00:01
   Blob Data의 저장방법입니다. 참고로  저는 도서출판 대림의  델파이3 플러스
   원을 참조하였습니다
  
   폼위에 다음과 같은 Object들이 있다고 합시다.
  
   object DataSource1: TDataSource
       DataSet = Table1
  
   object Table1: TTable
       DatabaseName = 'c:\test'
       TableName = 'test.dbf'
       Active = True
       [이 Test,DBF에는 단지 MEMO,PIC이라는 두 개의 필드밖에 없습니다.그
   러나 test.dbf는 이미 존재하는 파일이어야 합니다.  DataBaseDeskTop으로 미
   리 c:\test에다 만들어두셔야 합니다.]
  
   object Query1: TQuery
       Active = False
       DatabaseName = 'c:\test'
       [Blob의 저장을 위해서는 Query를 사용하는 것이 좋습니다]
  
   object Memo1: TMemo
   [저장될 memo입니다]
  
   object Image1: TImage
   [저장될 bmp파일을 보여주기 위한 TImage입니다. 이  Image1에 이미지를 불
   러오는데 필요한 오브젝트들이 아래에 있습니다.]
  
   object BitBtn2: TBitBtn [Image1에 그림을 불러오기 위한 Event Handler입니
   다]
   procedure TForm1.BitBtn2Click(Sender: TObject);
   begin
   if OpenDialog1.Execute then
     Image1.Picture.Loadfromfile(OpenDialog1.FileName);
   end;
  
   object OpenDialog1: TOpenDialog [그림을 불러오기 위한 Dialog입니다]
  
   object DBGrid1: TDBGrid
       DataSource = DataSource1
   [우리가 저장할 테이블의 각 필드가 실제로 blob임을 보여줍니다]
  
   [이것이 요점입니다.]
   object BitBtn1: TBitBtn
   procedure TForm1.BitBtn1Click(Sender: TObject);
   begin
   Table1.Close;
   with Query1 do begin
        Close;
        SQL.Clear;
        SQL.Add('insert into Test(MEMO, PIC) values(:p1,:p2)');
        Params[0].AsBlob:=Memo1.Text;
        Params[1].LoadFromFile(OpenDialog1.FileName,ftGraphic);
        ExecSQL;
   end;
   Table1.Open;
   end;
  
   object DBImage1: TDBImage
       DataField = 'PIC'
       DataSource = DataSource1
   [실제로 그림이 저장되었음을 확인해보기 위한 그림판입니다]
   object DBMemo1: TDBMemo
       DataField = 'MEMO'
       DataSource = DataSource1
   [실제로 Memo가 저장되었음을 확인해보기 위한 DBMEMO입니다]
  
   질문의 의도와 맞는지 모르겠는데 어쨌건 도움이 되셨길 바랍니다.
   감사합니다.
  
  


+ -

관련 글 리스트
2235 [답변] TIGOON/ Blob Data Save apoyando 1601 1998/04/04
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.