保存图片到数据库的问题

mbzdh 2003-07-09 10:31:19
各位大虾,你们好!
能不能用sql语句插入一条包含图片字段的记录。insert into........
谢谢!111
...全文
63 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
dongliu 2003-07-09
  • 打赏
  • 举报
回复
不能,
给你点代码
数据库中存放图片的字段类型为blob
var
MS_JpegStream:TMemoryStream;
M_BitMap:TBitMap;
M_Jpeg:TJpegImage;


procedure TinsertForm.buttonSelectClick(Sender: TObject);
var
filename:string;
begin
image1.Picture.LoadFromFile('');
if OpenDialog1.Execute then
begin

filename:=extractfileext(OpenDialog1.FileName);

image1.Picture.LoadFromFile(OpenDialog1.FileName);


MS_JpegStream:=TMemoryStream.Create;
M_BitMap:=TBitMap.Create;
M_Jpeg:=TJpegImage.Create;
if (filename='.bmp') or (filename='.BMP') then
begin
M_BitMap.LoadFromFile(OpenDialog1.FileName);
M_Jpeg.Compress;
M_Jpeg.Assign(M_BitMap);
end
else if (filename='.jpg') or (filename='.JPG') then
begin
M_Jpeg.LoadFromFile(OpenDialog1.FileName);
end;
M_Jpeg.SaveToStream(MS_JpegStream);
end;
end;

procedure TinsertForm.btnSaveClick(Sender: TObject);
begin
//插入新的记录
try
adoquery1.close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('insert into hm_jc_dxal(tupian)values');
adoquery1.SQL.Add('(:tupian)');
adoquery1.Parameters.ParamByName('tupian').LoadFromStream(MS_JpegStream,ftblob);
adoquery1.ExecSQL;

ShowMessage('资料成功保存!');
MS_JpegStream.Free;
M_BitMap.Free;
M_Jpeg.Free;
except
ShowMessage('资料保存失败!!');
end;
end;
end;
startjoy 2003-07-09
  • 打赏
  • 举报
回复
不能,SQL语句只是一条发送到数据库服务器的“字符串”

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧