asp代码如下:
<%
dim formsize,formdata,bncrlf,divider,datastart,dataend,mydata
formsize=request.totalbytes  '取得客户端发过来的大小
formdata=request.binaryread(formsize)'把客户发过来的数据转成二进制作
bncrlf=chrB(13) & chrB(10)
divider=leftB(formdata,clng(instrb(formdata,bncrlf))-1)
datastart=instrb(formdata,bncrlf & bncrlf)+4
dataend=instrb(datastart+1,formdata,divider)-datastart
mydata=midb(formdata,datastart,dataend)'上面总共是取得图片的二进制数据
Set Conn = Server.CreateObject("ADODB.Connection") Conn.ConnectionString = "dsn=mysql;driver={myodbd driver};server=localhost;uid=root;pwd=******;database=mydatabase" 
Conn.Open
set rs=Server.CreateObject("ADODB.Recordset")
rs.open "select * from test",conn,1,3
rs.addnew
rs("image").appendchunk mydata
rs.update
rs.close
set rs=nothing
set Conn=nothing
%>我的目的是:将图片以2进制的方式存放到mysql数据库(5.0版本),test表结构如下:
creat table test(image BLOB)
但我一选择图片提交后,就提示:Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC 驱动程序管理器] 无效的字符串或缓冲区长度
奇怪的是我乱插入一行数据,就无此提示了,但却有另一个错误提示:ADODB.Field (0x800A0C93)
在此环境中不允许操作。
-----------------------------
救命啊,这个问题把我搞风了,不知道是什么原因