求救:文件存入数据库的问题,急!!! 小弟做了一个小程序,想实现如下功能:1,将word、excel、pdf文件存入数据库2. 可以直接打开浏览做的是cs结构,服务器端无iis,数据库为sqlserver从网上查了很长时间,找不到满意的答复,求各位兄弟帮忙啊。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 很简单啊,通过文件流就可以了数据库字段类型设置为IMAGE以文件流模式存储和存储照片一样,代码都不用改。至于如何打开,通过TOLEContain直接可以打开 OLEContainer的标签下面, 照 Hank(星星农场) 再补充一点用LoadFromStreadm方法载入, 用 OleContainer1.SaveToStream();保存 搜索下吧 ,去Delphibbs.com看看,那里的资料比较多 怎么给你例子,所有代码不过20来行,核心代码不过数行1、打开文件 with TOpenDialog.Create(Self) do try if Execute then begin OleContainer.CreateObjectFromFile(FileName,False); OleContainer.DoVerb(OleContainer.PrimaryVerb); end; finally Free; end;2、保存到数据库中varStream: TStream; ADOQury.Insert; ADOQury.FieldByName('FILEIDNO').AsString:='0001'; Stream:=ADOQury.CreateBlobStream(ADOQury.FieldByName('FILEBODY'), bmWrite); try OleContainer.SaveToStream(Stream); finally Stream.Free; end; ADOQury.Post;3、打开数据表察看文件var Stream: TStream; Stream:=ADOQury.CreateBlobStream(ADOQury.FieldByName('FILEBODY'), bmRead); try OleContainer.LoadFromStream(Stream); finally Stream.Free; end; OleContainer.DoVerb(ovPrimary); 多谢星星,本来以为olecontainer不能自动识别文件格式,所以显示上可能会有问题。呵呵,没想到如此简单。 TSocketConnection 的连接数 excel导入问题 什么控件能显示ani动画? dll中有数据库组件就出错 我要做一个P2P程序,能同时能下载多个软件和同时响应多个用户我我这里下载,请高手给我一点思路,我用哪个控件做方便,我用IdTCPServer, 购买医疗mis源代码! 小问题,在线等(D7 dbexpress) 如何找到异常出在什么地方?然后进行相应的异常处理? 网络编程高手请进!! Delphi 中怎么用正则表达式取出下面的值 VB翻译成DELPHI --分不够可以再加,多少都给`~ 不带FORM的PAS文件怎么编译?
数据库字段类型设置为IMAGE
以文件流模式存储和存储照片一样,代码都不用改。至于如何打开,通过TOLEContain直接可以打开
再补充一点用LoadFromStreadm方法载入, 用
OleContainer1.SaveToStream();保存
with TOpenDialog.Create(Self) do
try
if Execute then
begin
OleContainer.CreateObjectFromFile(FileName,False);
OleContainer.DoVerb(OleContainer.PrimaryVerb);
end;
finally
Free;
end;2、保存到数据库中
var
Stream: TStream; ADOQury.Insert;
ADOQury.FieldByName('FILEIDNO').AsString:='0001';
Stream:=ADOQury.CreateBlobStream(ADOQury.FieldByName('FILEBODY'), bmWrite);
try
OleContainer.SaveToStream(Stream);
finally
Stream.Free;
end;
ADOQury.Post;3、打开数据表察看文件
var
Stream: TStream; Stream:=ADOQury.CreateBlobStream(ADOQury.FieldByName('FILEBODY'), bmRead);
try
OleContainer.LoadFromStream(Stream);
finally
Stream.Free;
end;
OleContainer.DoVerb(ovPrimary);