🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.delphi.bazy-danych
Article #82852

Re: CodeTyphon + ZEOSLIB + problem z zapisem grafiki

#82852
From: miab
Date: Mon, 27 Nov 2017 23:16
59 lines
2618 bytes
W dniu 12-11-2017 o 12:19, jw_developer pisze:
> Witam !
> 
> Windows 10/64 bit + Firebird 2.5 + CodeTyphon 6.2 + 
> ZEOSLIB(zainstalowana z CT)
> 
> Pole w bazie danych zadeklarowane jako :
> F_03 BLOB SUB_TYPE 0 SEGMENT SIZE 80 NOT NULL
> W poprzedniej wersji CT (5.9) zapis i odczyt grafiki działał bez 
> problemu a w aktualnej wersji nie zapisuje się nic albo ewentualnie
> jakieś "krzaki" bez względu na format zapisywanej grafiki.
> 
> StoredProc_1.Params.AddParam(StoredProc_1.Params.CreateParam(ftBlob,'P_03', 
> ptInput));
> if OpenPictureDialog1.FileName.IsEmpty then
>    StoredProc_1.ParamByName('P_03').Value := Null
> else
> StoredProc_1.ParamByName('P_03').LoadFromFile(OpenPictureDialog.FileName, ftBlob); 
> 
> 
> Gdzie może być błąd ?.....

Raczej nie w ZEOS (teraz sprawdziłem).
W Delphi 10 i Lazarus 1.8RC5 działa 
.LoadFromFile(OpenPictureDialog.FileName, ftBlob)
natomiast w CT 6.30 nie(znaczy działa z błędami w danych).
Natomiast ładowanie przez pośredniego stream-a działa dla wszystkich:
<code>
procedure TForm1.Button4Click(Sender: TObject);
var
   blob, fs: TStream;
begin
   if OpenPictureDialog1.Execute then
   begin
   //
   ZTable1.Insert;
   ZTable1.FieldByName('F1').AsInteger:= 4;
   blob:= ZTable1.CreateBlobStream(ZTable1.FieldByName('F_BLOB'), bmWrite);
   try
     blob.Seek(0, soFromBeginning);

     fs:= TFileStream.Create(OpenPictureDialog1.FileName, fmOpenRead or
       fmShareDenyWrite);
     try
       blob.CopyFrom(fs, fs.Size)
     finally
       fs.Free
     end;
   finally
     blob.Free
   end;

   ZTable1.Post;

   end;
end;
</code>

miab
Technical Details
Message-ID: <ovi6gf$vfh$1@node2.news.atman.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail
References: <5a082e2f$0$15201$65785112@news.neostrada.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail
From: miab <miwa14@wp.pl>
Newsgroups: pl.comp.lang.delphi.bazy-danych
Subject: Re: CodeTyphon + ZEOSLIB + problem z zapisem grafiki
Date: Tue, 28 Nov 2017 00:16:36 +0100
Organization: ATMAN - ATM S.A.
Lines: 59
Message-ID: <ovi6gf$vfh$1@node2.news.atman.pl>
References: <5a082e2f$0$15201$65785112@news.neostrada.pl>
NNTP-Posting-Host: 89-72-16-209.dynamic.chello.pl
Mime-Version: 1.0
X-Trace: node2.news.atman.pl 1511824719 32241 89.72.16.209 (27 Nov 2017 23:18:39 GMT)
X-Complaints-To: usenet@atman.pl
NNTP-Posting-Date: Mon, 27 Nov 2017 23:18:39 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:52.0) Gecko/20100101 Thunderbird/52.4.0
X-Mozilla-News-Host: news://news.atman.pl
In-Reply-To: <5a082e2f$0$15201$65785112@news.neostrada.pl>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit