图片数据的存和取示例

---摘自互联网

    图片数据存入数据库：
            sqlstr="select * from "&tbname&" where id is null"
            set rs=server.createobject("adodb.recordset")
            rs.Open sqlstr,conn,1,3
            rs.AddNew ()
            rs("title")=title
            rs("filename")=filename
            rs("filetype")=filetype
            rs("thelevel")=thelevel
            rs("uploaddate")=date()
            rs("uploadip")=request.ServerVariables("REMOTE_ADDR")
            rs("contenttype")=contenttype
            rs("data").AppendChunk (binstr)
            rs("size")=size
            rs("offset")=offset
            rs.Update
            rs.Close()

    读取显示：
        rs.Open sqlstr,conn,3
        if not rs.EOF then
                contenttype=rs("contenttype")
                binstr=rs("data").GetChunk(rs("size")+rs("offset"))
                if rs("offset")=1 then
                    binstr=midb(binstr,2)
                end if
                if instr(contenttype,"text/")=1 or _
                   instr(contenttype,"image/")=1 or _
                   instr(contenttype,"application/msword")=1 then
                    response.contenttype=trim(contenttype)
                    response.binarywrite binstr
                else
                    response.addheader "Content-Disposition","attachment;
                    filename="""&rs("filename")&""""
                    response.contenttype=trim(contenttype)
                    response.binarywrite binstr
                end if
                if request("preview")<>"yes" then
                    sqlstr="update "&tbname&" set downtimes=downtimes+1
                    where id="&fileid
                    conn.Execute sqlstr
                end if
        end if
    说明：
    对于超长的二进制数据（如图像数据）要使用fieldname.AppendChunk() 和
    fieldname.GetChunk()来读写。