这样用ADO把文件作为二进制存到数据库中???

解决方案 »

  1.   

    '将任何文件从数据库中下载到本地:
    Public Function LoadFile(ByVal col As ADODB.Field, ByVal FileName As String) As Boolean '获得binary数据
        On Error GoTo myerr:
         Dim arrBytes() As Byte
         Dim FreeFileNumber As Integer
         lngsize = col.ActualSize
         arrBytes = col.GetChunk(lngsize)
         FreeFileNumber = FreeFile
         Open FileName For Binary Access Write As #FreeFileNumber
         Put #FreeFileNumber, , arrBytes
         Close #FreeFileNumber
         LoadFile = True
    myerr:
         If Err.Number <> 0 Then
         LoadFile = False
         Err.Clear
         End If
    End Function'将文件从本地上传到数据库中
    Public Function UpLoadFile(ByVal FileName, ByVal col As ADODB.Field) As Boolean
         On Error GoTo myerr:
         Dim arrBytes() As Byte
         Dim FreeFileNumber As Integer
         FreeFileNumber = FreeFile
         Open FileName For Binary As #FreeFileNumber
         n = LOF(FreeFileNumber)
         ReDim arrBytes(1 To n) As Byte
         Get #FreeFileNumber, , arrBytes
         Close #FreeFileNumber
         col.AppendChunk (arrBytes)
         UpLoadFile = True
    myerr:
         If Err.Number <> 0 Then
         UpLoadFile = False
         Err.Clear
         End If
    End Function
      

  2.   

    参考:
    http://support.microsoft.com/default.aspx?scid=kb;EN-US;258038