자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

Delphi DB에 이미지 등록

2016.01.15 15:46

syc 조회 수:625

본 게시판 사용시 당부 사항
* 이 게시판은 자유롭게 질문을 올리고 자발적으로 답변을 공유하는 게시판입니다.
* 어느 누구도 답변을 달아야만 하는 책임은 없습니다.
* 따라서 질문을 올리실 때에는 최대한 자세하고 정중하게 질문을 올려 주세요.
* 최대한 질문을 자세히 올려야 답변도 자세히 올라 옵니다.
* 본 질문에 답변을 주시는 여러 개발자님들께 미리 감사드립니다.
-----------------------------------------------------------------------------------------------

 

안녕하세요!

모바일로 사진을 찍은후 DataBase에 이미지를 등록하는 어플을 테스트 중인데 잘안돼서 질문드려요~~!!

 

한번에 개발하는 안드로이드/IOS 앱 with 델파이 고급 교제

실습) 만들어봅시다 : 사원정보 실전 앱 따라하기는 잘 되어서

참고하였습니다.

 

DB는 MSSQL을 사용하였고 Server 컴퓨터를 따로 사용해야해서 DataSnap을 이용하였습니다.

 

ServerMethodsUnit1에 Procedure을 만들고

procedure TServerMethods1.Save(AImage: TStream);
begin
  FDQuery1.Edit;

  (FDQuery1.FieldByName('사진') as TBlobField).LoadFromStream(AImage);

  FDQuery1.Post;
  FDQuery1.ApplyUpdates(0);
  FDQuery1.CommitUpdates;
  FDQuery1.Refresh;
end;

 

앱에 배포한 프로젝트의 저장 버튼을 아래와 같이 만들어주었습니다.

procedure TForm6.Button1Click(Sender: TObject);
var
  ImgStream : TMemoryStream;
  Method : TServerMethods1Client;

begin
  ImgStream := TMemoryStream.Create;
  Method := TServerMethods1Client.Create(U_menu.Form1.SQLConnection1.DBXConnection);
  try
    Image1.Bitmap.SaveToStream(ImgStream); //이미지는 actionlist의 카메라기능 버튼으로 사진을 찍은 이미지입니다.
    Method.Save(ImgStream);
  finally
    ImgStream.Free;
  end;
end;

 

저장 버튼 클릭시 에러는 발생하지 않지만 DB에 저장이 되지않습니다...

 

 

///////////

 

그래 다른방법으로

ServerMethodsUnit1에

procedure TServerMethods1.Savett(AImage: TStream; AName: string);
begin

  FDConnection1.StartTransaction;
  try
    with FDQuery1 do
    begin
      Close;
      SQL.Clear;
      SQL.Text := 'Update Jaje_RegTbl Set 사진=:Image Where 일련번호='+#39+AName+#39;
      ParamByName('Image').AsStream := AImage;
      Execsql;
    end;
    FDConnection1.Commit;
  finally
    FDConnection1.Rollback;
  end;
end;

 

앱에는

procedure TForm6.Button1Click(Sender: TObject);
var
  ImgStream : TMemoryStream;
  Method : TServerMethods1Client;
  ANumber : string;
begin
  ANumber := label1.Text;
  ImgStream := TMemoryStream.Create;
  Method := TServerMethods1Client.Create(U_menu.Form1.SQLConnection1.DBXConnection);
  try
    Image1.Bitmap.SaveToStream(ImgStream);
    Method.Savett(ImgStream, ANumber);
  finally
    ImgStream.Free;
  end;

end;

 

이런식으로 만들어서 저장하니 원래있던 사진은 사라지고 빈 화면만 저장이 됩니다...

교제의 로컬서버에서는 잘 되던데

DataSnap 서버에서는 안되는 건가요??

 

문제점 알려주시면 감사하겠습니다...!!

번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 17228
공지 유용한 관련 사이트 관리자2 2014.03.20 56107
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 99543
2099 게시글 수정 부탁드립니다. [1] vane 2019.11.19 260
2098 linux 용 delphi UI 를 만들고 싶어요 [1] 브래이브 2016.07.22 260
2097 FastReport에서 코드작성은 어떻게 해야되나요? 코드탭이 아예 선택이 안되네요.. [2] file 왕초보 2020.10.13 260
2096 안드로이드 Bluetooth file 세진 2016.05.13 261
2095 ip4 주소형식을 ipv6 형식으로 변환하는 합수 없나요? kerry 2016.08.30 261
2094 RAD Studio 10.2에 버그가 있는 것 같습니다. [1] 쿠리 2018.08.22 261
2093 IOS 앱실행관련 문의사항입니다. ( 시뮬레이터 관련 ) [2] 궁금한사람 2019.09.02 261
2092 FastReport 설치 오류 [1] file 박준형 2017.03.16 261
2091 XE7 access violation at 0x00020006. 이상한 에러 [2] 한시민 2016.04.06 261
2090 APP STORE IOS....앱 아이콘을 Xcode의 자산 카탈로그에 추가해야합니다 문제 [1] 성후아빠 2020.07.07 261
2089 builder 10.4.1 버젼에서 생성자 함수에 fastcall 에러 sihwan 2020.10.09 261
2088 [IoT 세미나] 병원에서의 IoT 활용 예제를 알고싶어요. Humphery 2015.09.04 262
2087 xe10 태블릿에서 application does not support this device [2] 김하나 2016.10.26 262
2086 Delphi TWebBrowser 에서 360 파노라마 VR 속도가 늦어요. [3] file midas 2018.11.19 262
2085 addindex 에서 key viloation 에러 [2] 가나다 2019.04.02 262
2084 10.2.1 Tokyo - Linux Platform 개발환경 구축관련 문의 거북선생 2019.08.08 262
2083 interbase Xe7 을 인스톨하고자합니다 [1] 모나도 2017.03.11 262
2082 델파이로 개발된 GUI프로그램 관련 질문이 있습니다.. [1] 재춘이 2020.04.23 263
2081 ios기기 연결 실행시 에러 - 살펴봐주세요.. 감사 [1] datare 2015.07.11 264
2080 Rest Server 를 이용해서 API 개발 하려고 합니다. [1] 제트콜 2016.08.23 264