存图片 var testStream:TMemoryStream; begin testStream := TMemoryStream.Create; //創建內存流 Image1.Picture.Graphic.SaveToStream(testStream);//將圖片保存至內存流中 adoquery1.Close; adoquery1.SQL.Clear; adoQuery1.SQL.Add('Insert into test_test (id,photo) values (:p1,:P2)'); adoquery1.Parameters.ParamByName('p1').Value := '001'; adoQuery1.Parameters.ParamByName('p2').LoadFromStream(testStream,ftGraphic); //讀取保存的內存圖 adoquery1.ExecSQL; testStream.Free;//釋放內存流 end; 取图的方法与村类似。
with od2 do begin // defaultext:='jpg'; filter:='*.jpg,*.tif,*.bmp,*.png'; if od2.execute then begin bmp1:=TBitmap.Create; jpg1:=TJpegImage.Create; try jpg1.LoadFromFile(od2.FileName); bmp1.Assign(jpg1); adoquery1.Edit; adoquery1.FieldByName('tupian').Assign(bmp1); adoquery1.fieldbyname('name').AsString:=dbedit15.Text; adoquery1.post; finally jpg1.Free; bmp1.Free; end; dbedit15.Text:=od2.FileName; end; end; 点击选择图片按钮的同时保存了选择的图片 od2是opendialog
应该使用BLOB类型存储。 BLOB=(Binary Large Object)二进制大对象类型。它可以用来存储图形声音视频数据等等,尽管关系型数据库管理系统最初不是为它们而设计的,但是多媒体数据可以存储在BLOB 或LONG RAW 类型(Oracle里的讲法)的字段内。 但是要注意:不同的DBMS对BLOB格式定义是不一样的,据我所知Oracle的BLOB(LONG RAW)设计就和其他家的格式不同,需要转化(小树不修不直溜,人不修理艮赳赳啊)
TBlobField(AQuery.FieldByName('Image')).LoadFromFile('C:\a.bmp');
var
testStream:TMemoryStream;
begin
testStream := TMemoryStream.Create; //創建內存流
Image1.Picture.Graphic.SaveToStream(testStream);//將圖片保存至內存流中
adoquery1.Close;
adoquery1.SQL.Clear;
adoQuery1.SQL.Add('Insert into test_test (id,photo) values (:p1,:P2)');
adoquery1.Parameters.ParamByName('p1').Value := '001';
adoQuery1.Parameters.ParamByName('p2').LoadFromStream(testStream,ftGraphic); //讀取保存的內存圖
adoquery1.ExecSQL;
testStream.Free;//釋放內存流
end;
取图的方法与村类似。
begin
// defaultext:='jpg';
filter:='*.jpg,*.tif,*.bmp,*.png';
if od2.execute then
begin
bmp1:=TBitmap.Create;
jpg1:=TJpegImage.Create;
try
jpg1.LoadFromFile(od2.FileName);
bmp1.Assign(jpg1);
adoquery1.Edit;
adoquery1.FieldByName('tupian').Assign(bmp1);
adoquery1.fieldbyname('name').AsString:=dbedit15.Text;
adoquery1.post;
finally
jpg1.Free;
bmp1.Free;
end; dbedit15.Text:=od2.FileName;
end;
end;
点击选择图片按钮的同时保存了选择的图片
od2是opendialog
BLOB=(Binary Large Object)二进制大对象类型。它可以用来存储图形声音视频数据等等,尽管关系型数据库管理系统最初不是为它们而设计的,但是多媒体数据可以存储在BLOB 或LONG RAW 类型(Oracle里的讲法)的字段内。
但是要注意:不同的DBMS对BLOB格式定义是不一样的,据我所知Oracle的BLOB(LONG RAW)设计就和其他家的格式不同,需要转化(小树不修不直溜,人不修理艮赳赳啊)