delphi如何在sql server 中存取2进制文件(200分)

  • 主题发起人 主题发起人 nslhw
  • 开始时间 开始时间
N

nslhw

Unregistered / Unconfirmed
GUEST, unregistred user!
请高手给出delphi在sel server2000中保存和取出并恢复 文件的代码,本人是新手,谢谢
 
这里使用一个ADOTable来连接数据表,<br>ADOTable1NewFile是一个sql server image字段, <br>可以用来保存exe文件,<br>delphi中声明为blob类型字段<br>&nbsp; &nbsp; ADOTable1NewFile: TBlobField;<br>保存:<br>&nbsp; if OpenDialog1.Execute then<br>&nbsp; &nbsp; ADOTable1NewFile.LoadFromFile(OpenDialog1.filename);<br>恢复:<br>&nbsp;if SaveDialog1.Execute then<br>&nbsp; &nbsp; ADOTable1NewFile.SaveToFile(SaveDialog1.filename);<br>运行:<br>ShellExecute(handle, 'open', pchar(SaveDialog1.filename), '','', SW_SHOWNORMAL)
 
得用<br>TStreamMeomory
 
TADOBlobStream(ATable.Fields[0]).LoadFromFile.....
 
aStream: TMemoryStream;<br>aStream.LoadFromFile();<br>Insert into table1(Field1) values(:Param)<br>AdoQuery.Parameters.ParamByName(Param).LoadFromStream(aStream, ftBlob);
 
tblobfield(FieldByName('data')).SaveToFile('c:/aaa.xls'); &nbsp;//从数据库取出<br><br>(FieldByName('data') as TBlobField).LoadFromFile(in_FileName); //文件存入数据库
 
TMemoryStream,以流文件的形式存储,这样的例子网上很多,您可以上网查找一下。
 
后退
顶部