http://www.csdn.net/expert/topic/922/922547.xml?temp=.2480127---------------------------------------------------------
Montaque==Digitalboy==Houyongfeng==Monkey

解决方案 »

  1.   

    存入:
    Dim mycn As ADODB.Connection
    Dim myrs As ADODB.Recordset
    Set mycn = New ADODB.Connection
    Set myrs = New ADODB.Recordset
        
    mycn.ConnectionString = "Provider=SQLOLEDB.1;Integrated      Security=SSPI;Persist Security Info=False;Initial Catalog=test_bmp;Data Source=LGYCOMPU-XMSOA3"
        mycn.Open
        myrs.ActiveConnection = mycn
        myrs.Source = "select * from tabbmp"
        myrs.Open , , adOpenKeyset, adLockOptimistic
        
        myrs.AddNew
        myrs!chrname = Text1.Text'图片文件名
        myrs!chrlocation = Text2.Text'图片路径
        
    DataFile = 1
    Open Trim(Text2.Text) For Binary Access Read As DataFile
    Fl = LOF(DataFile)    ' 文件中数据的长度
    If Fl = 0 Then Close DataFile: Exit Sub
    Chunks = Fl \ ChunkSize
    Fragment = Fl Mod ChunkSize
    'myrs!binbmp.AppendChunk Null
    ReDim Chunk(Fragment)
    Get DataFile, , Chunk()
    myrs!binbmp.AppendChunk Chunk()
    ReDim Chunk(ChunkSize)
    For I = 1 To Chunks
    Get DataFile, , Chunk()
    myrs!binbmp.AppendChunk Chunk()
    Next I
    Close DataFile
    myrs.Update
    myrs.Close
    mycn.Close读出
    '我用一个ADO控件读取保存图片的表
        If Adodc1.Recordset.EOF = True Then
            Exit Sub
        Else
            Adodc1.Recordset.MoveNext
        Text1.Text = Adodc1.Recordset.Fields(0)
        Text2.Text = Adodc1.Recordset.Fields(2)
    DataFile = 1
    Open "pictemp" For Binary Access Write As DataFile'建立一个临时文件读取图片
    Fl = Adodc1.Recordset.Fields(1).ActualSize
    Chunks = Fl \ ChunkSize
    Fragment = Fl Mod ChunkSize
    ReDim Chunk(Fragment)
    Chunk() = Adodc1.Recordset.Fields(1).GetChunk(Fragment)
    Put DataFile, , Chunk()
    For I = 1 To Chunks
    ReDim Buffer(ChunkSize)
    Chunk() = Adodc1.Recordset.Fields(1).GetChunk(ChunkSize)
    Put DataFile, , Chunk()
    Next I
    Close DataFile
    FileName = "pictemp"
    Picture1.Picture = LoadPicture("pictemp")
    End If