有关图保存后查询出错的问题,请高手指点!TKS!
procedure TFrGmInfoInput.btnfindClick(Sender: TObject);
var
szname: string;
stream: TMemoryStream;
i: Integer;
jpeg: TJPEGImage;
begin
with qryimagefind do
begin
Close;
SQL.Clear;
SQL.Text := 'select logo from test ' +
' where type=''' + trim(edttype.Text) + '''';
Open;
end;
if not qryimagefind.IsEmpty then
begin
try
stream := TMemoryStream.Create;
TBlobField(qryimagefind.FieldByName('logo')).SaveToStream(stream);
stream.Position := 0;
jpeg := TJPEGImage.Create;
jpeg.LoadFromStream(stream);
Image2.Picture.Assign(jpeg);
finally
jpeg.Free;
stream.Free;
end;
end;
end;
以上是查询的代码,之前运行没有错误,现在提示"JPEG error #42",有点不懂.
但是如果按字段"type"更改某张图片后,又能查询,但重新打开界面输入字段内容查找却又提示如上的错误.
更新代码:
procedure TFrGmInfoInput.btnupdateClick(Sender: TObject);
var
stream: TMemoryStream;
jpeg: TJPEGImage;
begin
try
with tblimage2 do
begin
CommandText := 'update test set logo=:logo where type=''' + trim(edttype.Text) +
'''';
end;
stream := TMemoryStream.Create;
jpeg := TJPEGImage.Create;
jpeg.Assign(Image1.Picture.Graphic);
jpeg.SaveToStream(stream);
stream.Position := 0;
tblimage2.Parameters.ParamByName('logo').LoadFromStream(stream, ftBlob);
tblimage2.Execute;
ShowMessage('OK!');
finally
stream.Free;
jpeg.Free;
end;
end;
请高手们指点!万分感谢!