用delphi存储和读取文件(如.rar文件)到mssql2k中————-高分送 语句该怎么写(sql和delphi)分不够再加! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 TBlobField.LoadFromFile or TBlobField.LoadFromStream procedure SaveToBlobField(AField: TBlobField;AFile: string);var FStream: TMemoryStream;begin FStream := TMemoryStream.Create; FStream.Clear; FStream.Size :=0; FStream.LoadFromFile(AFile); FStream.Position :=0; AField.LoadFromStream(FStream); FStream.Free;end; 你好,请能不能详细一些,如ms数据库字段设置,sql语句,在delphi中用opendialog控件打开文件(.heml或.rar),再存入数据库怎么写?再从数据库中读出还原成.html文档有怎样写? 保存时记下文件的名字,读取查看时先将stream另存为原来的文件,然后打开。读取:var ms: TStream;begin ms := qrySign.CreateBlobStream(TBlobField(qrySign.FieldByName('Sign_OnImg')),bmRead); if ms.size > 0 then begin ms.SaveToFile(文件名); 打开; end;end; ms数据库字段设置>>>>类型为Text,还应该另外加一个字段记录原始文件名再存入数据库怎么写?>>>>用上面的SaveToBlobField函数,把opendialog.FileName做参数传入再从数据库中读出还原成.html文档有怎样写?>>>>ms.SaveToFile(原始文件名); 用image类型字段就可以了。然后在加一个字段记扩展名按楼上的方法就可以了。建议楼主要多思考,不要只看现成的代码 用Delphi保存二进制文件时最好不用SQL语句,直接对相关字段操作即可。 我进行了积极的思考思考的结果就是procedure TForm1.BitBtn1Click(Sender: TObject);var sql:string;begin adoquery1.Close; adoquery1.SQL.Clear; adoquery1.SQL.Add('insert into report (rep_name,rep_data) values (:rep_name,:rep_data)'); adoquery1.Parameters[0].Value:=SaveDialog1.FileName; //adoquery1.Parameters[1].Value:=SaveDialog1. SaveDialog1.Executeend; 好,我试试,成功揭帖!谢谢各位...再存入数据库怎么写?>>>>用上面的SaveToBlobField函数,把opendialog.FileName做参数传入难道竟然可以不用sql语句就可以存取数据?333...让大家见笑了..呜呜呜,我得路好长! 难道竟然可以不用sql语句就可以存取数据?333...让大家见笑了..呜呜呜,我得路好长!============================================================因为大家都是用ClientDataset\Dataset ClientDataset\Dataset,就不需要语句了啊? TVarRec类型的参数,我怎么传???? 请教一个问题 USB口 用什么东西通信啊 例如:过去我做COM口时 用的是MSCOMM 算高分吗? 关于keypress的问题。 卷的序列号的获取的问题 那位朋友有计算机毕业论文,给一份我参考一下 送分了,送分了... 请问关于图于网的区别是什么? case 语句的问题(长度) 如何将窗体上的关闭按钮的代码和窗体右上角自己的关闭联系起来 请问[error] rlink32: error opening file "frmMain.dfm"是什么意思? 应该如何解决?谢谢!! 怎样使pagecontrol实现以下功能?
var
FStream: TMemoryStream;
begin
FStream := TMemoryStream.Create;
FStream.Clear;
FStream.Size :=0;
FStream.LoadFromFile(AFile);
FStream.Position :=0;
AField.LoadFromStream(FStream);
FStream.Free;
end;
var
ms: TStream;
begin
ms := qrySign.CreateBlobStream(TBlobField(qrySign.FieldByName('Sign_OnImg')),bmRead);
if ms.size > 0 then
begin
ms.SaveToFile(文件名);
打开;
end;
end;
>>>>类型为Text,还应该另外加一个字段记录原始文件名
再存入数据库怎么写?
>>>>用上面的SaveToBlobField函数,把opendialog.FileName做参数传入
再从数据库中读出还原成.html文档有怎样写?
>>>>ms.SaveToFile(原始文件名);
按楼上的方法就可以了。建议楼主要多思考,不要只看现成的代码
procedure TForm1.BitBtn1Click(Sender: TObject);
var
sql:string;
begin
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('insert into report (rep_name,rep_data) values (:rep_name,:rep_data)');
adoquery1.Parameters[0].Value:=SaveDialog1.FileName;
//adoquery1.Parameters[1].Value:=SaveDialog1. SaveDialog1.Execute
end;
再存入数据库怎么写?
>>>>用上面的SaveToBlobField函数,把opendialog.FileName做参数传入
难道竟然可以不用sql语句就可以存取数据?333...让大家见笑了..呜呜呜,我得路好长!