用asp实现的数据库中存取文件的代码

时间:2022-09-14 15:34:37
  1. *************************************************************************  
  2. '**  
  3. '** 使用 ADODB.Stream 保存/读取文件到数据库  
  4. '** 引用 Microsoft ActiveX Data Objects 2.5 Library 及以上版本  
  5. '**  
  6. '** ----- 数据库连接字符串模板 ---------------------------------------  
  7. '** ACCESS数据库  
  8. '** iConcStr = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False" & _  
  9. '**     ";Data Source=数据库名"  
  10. '**  
  11. '** SQL数据库  
  12. '** iConcStr = "Provider=SQLOLEDB.1;Persist Security Info=True;" & _  
  13. '**     "User ID=用户名;Password=密码;Initial Catalog=数据库名;Data Source=SQL服务器名"  
  14. '**  
  15. '*************************************************************************  
  16. '  
  17. '保存文件到数据库中  
  18. Sub s_SaveFile()  
  19.     Dim iStm As ADODB.Stream  
  20.     Dim iRe As ADODB.Recordset  
  21.     Dim iConcStr As String  
  22.  
  23.     '数据库连接字符串  
  24.     iConcStr = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False" & _  
  25.         ";Data Source=F:\My Documents\客户资料1.mdb"  
  26.  
  27.     '读取文件到内容  
  28.     Set iStm = New ADODB.Stream  
  29.     With iStm  
  30.         .Type = adTypeBinary    '二进制模式  
  31.         .Open  
  32.         .LoadFromFile "c:\test.doc"  
  33.     End With  
  34.  
  35.     '打开保存文件的表  
  36.     Set iRe = New ADODB.Recordset  
  37.     With iRe  
  38.         .Open "表", iConc, adOpenKeyset, adLockOptimistic  
  39.         .AddNew         '新增一条记录  
  40.         .Fields("保存文件内容的字段") = iStm.Read  
  41.         .Update  
  42.     End With  
  43.  
  44.     '完成后关闭对象  
  45.     iRe.Close  
  46.     iStm.Close  
  47. End Sub  
  48.  
  49. '从数据库中读取数据,保存成文件  
  50. Sub s_ReadFile()  
  51.     Dim iStm As ADODB.Stream  
  52.     Dim iRe As ADODB.Recordset  
  53.     Dim iConc As String  
  54.  
  55.     '数据库连接字符串  
  56.     iConc = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False" & _  
  57.         ";Data Source=\\xz\c$\Inetpub\zj\zj\zj.mdb"  
  58.  
  59.     '打开表  
  60.     Set iRe = New ADODB.Recordset  
  61.     iRe.Open "tb_img", iConc, adOpenKeyset, adLockReadOnly  
  62.     iRe.Filter = "id=64"  
  63.  
  64.     '保存到文件  
  65.     Set iStm = New ADODB.Stream  
  66.     With iStm  
  67.         .Mode = adModeReadWrite  
  68.         .Type = adTypeBinary  
  69.         .Open  
  70.         .Write iRe("img")  
  71.         .SaveToFile "c:\test.doc"  
  72.     End With  
  73.  
  74.     '关闭对象  
  75.     iRe.Close  
  76.     iStm.Close  
  77. End Sub