為什麼 輸入 jpeg 到資料庫 只得一半 或 小於一半的原圖 |
尚未結案
|
iarthurtkt
一般會員 發表:2 回覆:6 積分:1 註冊:2005-09-29 發送簡訊給我 |
第一部份:
我參考了貴站一些會員的提示-輸入jpg 及bitmap
---------------------------------------------------
with dmdbConnPool.q2 do begin
SQL.clear;
SQL.Add('update employee set PHOTO=:iPic');
SQL.Add('where employeeid=:iEmp');
ParamByName('iEmp').AsString:=dbEmployeeID.text; if Uppercase(ExtractFileExt(DBEdit14.Text))='.JPG' then begin
JPG.Assign(Image1.Picture.Graphic);
TJPEGImage(Picture.Graphic).SaveToStream(Stream);
ParamByName('iPic').SetBlobData(Stream.Memory,Stream.Size);
ExecSQL; end
else if Uppercase(ExtractFileExt(DBEdit14.Text))='.BMP' then begin
JPG.Assign(Image1.Picture.Graphic);
JPG.CompressionQuality:=70;
JPG.SaveToStream(Stream);
ParamByName('iPic').SetBlobData(Stream.Memory,Stream.Size);
ExecSQL;
Showmessage('BITMAP are saved success : '+DBEdit14.Text);
end;
end;
end; // end of the If Course
Except
on E : Exception do begin
ShowMessage(E.ClassName+' error raised, with message : '+E.Message);
ShowMessage('NOT SUCCESS TO UPLOAD IMAGE');
Exit;
end; // end of the Exception end;
finally
JPG.Free;
Stream.Free;
end; // end of the finally try ( First Try )
------------------------------------------------------------------------------
輸入bitmap没有任何問題。但當輸入jpg時,小圖没有問題,但大圖就得一半或更小(所謂大圖只是
3xx K) 第二部份: 是 Part 2: 這是QUERY的 afterscroll 事件--以顯示圖 with dmdbConnPool.q3 do begin
SQL.clear;
SQL.Add('select * from con_sys_employee');
SQL.Add('where Employeeid=:Employeeid');
ParamByName('Employeeid').AsString := EmpAdmin.dbEmployeeID.text;
ExecSQL;
open; if not FieldByName('photo').IsNull then
try
MS:=TStringStream.Create('');
TBlobField(FieldByName('PHOTO')).SaveToStream(MS);
MS.Position:=0;
jpeg:=TJPEGImage.Create;
jpeg.LoadFromStream(MS);
EmpAdmin.Image1.Picture.Bitmap.Assign(jpeg);
finally
jpeg.Free;
ms.Free;
end // end of the try block
else begin
EmpAdmin.image1.Picture :=nil;
end // end of the begin
end -----------------------------------------------------------------------
我是初學者,希望有一個指引,我使用的是 MYSQL 4.0.26 Zeoslib 6.15。
------
Arthur Tou |
Sei
一般會員 發表:22 回覆:38 積分:17 註冊:2002-05-22 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |