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
[13690] [도움요청]ms-sql2005 필드타입 varchar(max) 인것에 이미지 파일 저장하기
클리어워터 [skyjdj] 1975 읽음    2011-04-29 14:41
안녕하세요
궁금한것이 있어서 질문드립니다...
서버는 ms-sql2005를 사용하고 있고 필드는 varchar(max)형을 쓰고 있는 필드에
이미지 파일을 저장할려고 하는데 어떻게 해야 하는지 궁금합니다..

기존에는 필드형식을 image로 줬을 경우 blob형식으로 해서 인서트를 가능하게 했었는데..
이렇게 쓰지 말라고 하네요... 그래서 타입이 varchar(max)인경우에는 어떻게 해야하는지 궁금합니다...
도저히 찾아봐도 어떻게 해야하는지 모르겠습니다..
아래는 필드타입이 image 였을경우 코딩입니다.





var lJPGIMG : TJpegImage;
    lMS     : TMemoryStream;
    lNEWSEQ : String;
    sSize   : String;
    lSELMAX : String;
begin
  if StrToFloat(ED_File_size.Text) > 512000 then
  begin
    TMS_ShowMessage('500KB 이하의 이미지만 등록가능합니다..',Self);

    Exit;
  end;


  if ADOQry1.Eof then
  begin
//    p_MyShowMessage('신규 이미지','등록 처리중입니다..',FALSE);

    ADOQry1.SQL.Clear;
    ADOQry1.SQL.Text := lINS;
    ADOQry1.Parameters.ParamByName('CD_EMP').Value := ED_cd_emp.Text;
    if Image2.Picture.Graphic <> NIL then
    begin
      lJPGIMG := TJpegImage.Create;
      lMS     := TMemoryStream.Create;
      lJPGIMG.Assign(Image2.Picture.Graphic);
      lMS.Position:=0;
      lJPGIMG.SaveToStream(lMS);
      ADOQry1.Parameters.ParamByName('POTO').LoadFromStream(lMS,ftBlob);
      lJPGIMG.FREE;
      lMS.FREE;
    end
    else begin
      ADOQry1.Parameters.ParamByName('POTO').LoadFromStream(lMS,ftBlob);
      ADOQry1.Parameters.ParamByName('SIGN_IMG').LoadFromStream(lMS,ftBlob);
    end;

+ -

관련 글 리스트
13690 [도움요청]ms-sql2005 필드타입 varchar(max) 인것에 이미지 파일 저장하기 클리어워터 1975 2011/04/29
13694     Re:[도움요청]ms-sql2005 필드타입 varchar(max) 인것에 이미지 파일 저장하기 정병선 1904 2011/05/05
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.