读取图片 var mStream:TMemoryStream; JpgFile:TjpegImage; begin ADOQuery1.Close; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('Select Picture From TechnicalProcess '+ 'Where UserId = '+udm.DataModule1.UserId); ADOQuery1.Open; if not ADOQuery1.FieldByName('Picture').IsNull then begin ; mStream:=TMemoryStream.Create ; JpgFile:=TjpegImage.Create ; TBlobField(ADOQuery1.FieldByName('Picture')).SaveToStream(mStream); mStream.Position :=0; jpgfile.LoadFromStream(MStream); image2.Picture.Assign(JpgFile); end else begin image2.Picture :=nil; end;
if not ADOQuery1.FieldByName('Picture').IsNull then begin 后面多了个分号
//------------读取-----------procedure TForm1.Button1click(Sender:TObject) var str:string; srm:TMemoryStream begin str:='select field1 from t '; srm:=TMemoryStream.create; with adoquery1 do begin close; sql.clear; sql.add(str); open; TBlobfield(fieldbyname('filed1')).savetostream(srm); srm.position:=0; srm.free; end; end;//-------------保存------------- olecontainer1.createobjectfromfile(opendialog1.filename,true); olecontainer1.doverb(0); srm:=TStringstream.create(''); with adoquery1 do begin close; sql.clear; sql.add('insert into t(field) values(:stream)'); parameters.parambyname('stream').loadfromstream(srm,ftblob); execsql; end;
//------------读取-----------procedure TForm1.Button1click(Sender:TObject) var str:string; srm:TMemoryStream begin str:='select field1 from t '; srm:=TMemoryStream.create; with adoquery1 do begin close; sql.clear; sql.add(str); open; TBlobfield(fieldbyname('filed1')).savetostream(srm); Image1.loadfromstream(srm); //这里刚才忘记了 srm.position:=0; srm.free; end; end;//-------------保存------------- olecontainer1.createobjectfromfile(opendialog1.filename,true); olecontainer1.doverb(0); srm:=TStringstream.create(''); with adoquery1 do begin close; sql.clear; sql.add('insert into t(field) values(:stream)'); parameters.parambyname('stream').loadfromstream(srm,ftblob); execsql; end;
MemStrm:TMemoryStream; //读取
MemStrm:=TMemoryStream.Create;
TBlob(ADOQuery.FieldByName('[图片]')).SaveToStream(MemStrm);
Image.LoadFromStream(MemStrm); //存储
Image.SaveToStream(MemStrm);
ADOQuery.Edit;
ADOQuery.FieldByName('[图片]').SetFieldType(ftBlob);
TBlob(ADOQuery.FieldByName('[图片]')).LoadFromStream(MemStrm);
ADOQuery.Post;
procedure TfrmTechnicalProcess.LoadPicture();
var
MemStrm:TMemoryStream;
begin
MemStrm:=TMemoryStream.Create;
ADOQuery1.Connection:=udm.DataModule1.ADOConnection1;
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select Picture From TechnicalProcess '+
'Where UserId = '+udm.DataModule1.UserId);
ADOQuery1.Open;
if ADOQuery1.FieldByName('picture').IsNull then Exit;
TBlob(ADOQuery.FieldByName('picture')).SaveToStream(MemStrm);
Image1.LoadFromStream(MemStrm);
// Image1.Picture.Assign(ADOQuery1.FieldByName('picture'));
end;我读取image,这样写,都无法编译通过呀,请问楼上的,哪儿错了呀
抱歉,书写问题。
var
MemStrm:TMemoryStream;
begin
MemStrm:=TMemoryStream.Create;
ADOQuery1.Connection:=udm.DataModule1.ADOConnection1;
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select Picture From TechnicalProcess '+
'Where UserId = '+udm.DataModule1.UserId);
ADOQuery1.Open;
if ADOQuery1.FieldByName('picture').IsNull then Exit;
TBlobField(ADOQuery1.FieldByName('picture')).SaveToStream(MemStrm);
// Image1.LoadFromStream(MemStrm);
Image1.Picture.Bitmap.LoadFromStream(MemStrm);
// Image1.Picture.Assign(ADOQuery1.FieldByName('picture'));
end;
var
MemStrm:TMemoryStream;
begin
MemStrm:=TMemoryStream.Create;
Image1.Picture.Bitmap.SaveToStream(MemStrm);
ADOQuery1.Connection:=udm.DataModule1.ADOConnection1;
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select Picture From TechnicalProcess '+
'Where UserId = '+udm.DataModule1.UserId);
ADOQuery1.Open;
ADOQuery1.Edit;
ADOQuery1.FieldByName('Picture').SetFieldType(ftBlob);
TBlobField(ADOQuery1.FieldByName('Picture')).LoadFromStream(MemStrm);
ADOQuery1.Post;
end;
var
mStream:TMemoryStream;
JpgFile:TjpegImage;
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select Picture From TechnicalProcess '+
'Where UserId = '+udm.DataModule1.UserId);
ADOQuery1.Open; if not ADOQuery1.FieldByName('Picture').IsNull then begin ;
mStream:=TMemoryStream.Create ;
JpgFile:=TjpegImage.Create ;
TBlobField(ADOQuery1.FieldByName('Picture')).SaveToStream(mStream);
mStream.Position :=0;
jpgfile.LoadFromStream(MStream);
image2.Picture.Assign(JpgFile);
end
else begin
image2.Picture :=nil;
end;
var
str:string;
srm:TMemoryStream
begin
str:='select field1 from t ';
srm:=TMemoryStream.create;
with adoquery1 do
begin
close;
sql.clear;
sql.add(str);
open;
TBlobfield(fieldbyname('filed1')).savetostream(srm);
srm.position:=0;
srm.free;
end;
end;//-------------保存-------------
olecontainer1.createobjectfromfile(opendialog1.filename,true);
olecontainer1.doverb(0);
srm:=TStringstream.create('');
with adoquery1 do
begin
close;
sql.clear;
sql.add('insert into t(field) values(:stream)');
parameters.parambyname('stream').loadfromstream(srm,ftblob);
execsql;
end;
var
str:string;
srm:TMemoryStream
begin
str:='select field1 from t ';
srm:=TMemoryStream.create;
with adoquery1 do
begin
close;
sql.clear;
sql.add(str);
open;
TBlobfield(fieldbyname('filed1')).savetostream(srm);
Image1.loadfromstream(srm); //这里刚才忘记了
srm.position:=0;
srm.free;
end;
end;//-------------保存-------------
olecontainer1.createobjectfromfile(opendialog1.filename,true);
olecontainer1.doverb(0);
srm:=TStringstream.create('');
with adoquery1 do
begin
close;
sql.clear;
sql.add('insert into t(field) values(:stream)');
parameters.parambyname('stream').loadfromstream(srm,ftblob);
execsql;
end;
Image1.Picture.Graphic:=TJPEGImage.create;
Image1.Picture.Graphic.LoadFromStream(srm);