由于身体不好,好长时间没有来这里了。今天一来,就给大家添麻烦了。也许这个问题以前有人已提出。如何利用delphi将图片或视频文件保存或读入SQL server 数据库!
解决方案 »
- 不同的mysql版本,竟会出现找不到字段的情况,急
- D7关机代码
- QQ登录器的源码的源码看不懂(菜鸟请问)
- InputQuery('输入查询条件','查询品名为'
- 急急急!!!关于繁体字!!!!
- 如何把widestring类型用writefile写入再用readfile读出来?在线等,最好给个例子
- 大家来看看这段代码为码会出错?--------怪事!!!!!
- 请问代码执行不了,提示delphi版本不对怎么解决?
- 求摄像头监控系统和网上直播系统源码
- 用sql 查询返回一个特定的字符应该怎样写
- 移动行检索内容dxdbgrid
- 关于两个select语句使用了union all后最终显示的字段会拉长的问题???
if SaveDialog1.Execute then
begin
Savedir := SaveDialog1.FileName ;
TblobField(TmpAdo.FieldByName('Content')).SaveToFile(Savedir);
以上为我之前写的一段代码,数据库中字段设为Image即可
TmpAdo.FieldByName('FileName').Value := EdtFileName.Text+FileKind;
TmpAdo.FieldByName('KindId').Value := (CmbKind.Items.Objects[CmbKind.ItemIndex] as TCombKind).AKindId;
TmpAdo.FieldByName('SaveTime').Value := FormatDateTime('yyyy-mm-dd',DateTimePicker1.Date);
TblobField(TmpAdo.FieldByName('Content')).LoadFromFile(EdtFileDir.Text);
TmpAdo.Post;
晕,刚才想高亮显示,怎么不行
然后
保存:
ParamByName('image字段').LoadFromFile(accessorySList.Names[nloop],ftGraphic);
读取:
一个是存为流一个是存为文件
TBlobField(cdstmp.FieldByName('image字段')).SaveToStream();
TBlobField(cdstmp.FieldByName('image字段')).SaveToFile();
--------
大概是这样的
var
picstream:tadoblobstream;
bmppic:tbitmap;
jpgpic:tjpegimage;
bmpstream:TMemoryStream;
OpenPicDialog:TOpenPictureDialog;
//以上是定义部分 adoquery1.SQL.Text:='select goodscode,picture from gds_goodscode with(nolock) where goodscode='+sgoodscode;
adoquery1.open;
//先查出来需要加图片的记录,然后edit
adoquery1.Edit;
if OpenPicDialog.Execute then
begin
jpgpic:=tjpegimage.Create;
bmppic:=tbitmap.Create;
bmpstream:=tmemorystream.Create;
jpgpic.LoadFromFile(OpenPicDialog.filename); //加载文件
bmppic.Assign(jpgpic);
bmppic.SaveToStream(bmpstream);
picstream:=tadoblobstream.Create(tblobfield(adoquery1.Fields[1]),bmWrite);
picstream.LoadFromStream(bmpstream);
picstream.Position:=0;
tblobfield(adoquery1.Fields[1]).loadfromstream(picstream);
end;
ADOTable1.open;
ADOTable1.append;
if OpenDialog1.Execute then
begin
TblobField(ADOTable1.FieldByName('picture')).LoadFromFile(OpenDialog1.filename);
ADOTable1.Post;
end;
//DBimage 控件显示图片
DataSource1.DataSet:= ADOTable1;
DBImage1.DataSource:=DataSource1;
DBImage1.DataField:='picture';
if SaveDialog1.Execute then
begin
Savedir := SaveDialog1.FileName ;
TblobField(ADOTable1.FieldByName('picture')).SaveToFile(Savedir);
Image1.picture.loadfromfile(Savedir);
end;