高分 急求asp高手 代码错误啊 错误类型:Provider (0x80020005)类型不匹配

来源:百度知道 编辑:UC知道 时间:2024/06/20 13:16:20
错误类型:
Provider (0x80020005)
类型不匹配。
/admin/admin_Pic.asp, 第11行

call PicAdd()
cat_id=Request.Form("cat_id")
Pic_Title=Request.Form("Pic_Title")
Pic_name=Request.Form("Pic_name")
Pic_img=Request.Form("Pic_img")
Pic_contents=Request.Form("Pic_contents")
Pic_red=Request.Form("Pic_red")
set rs=Server.CreateObject("ADODB.RecordSet")
rs.Open"select * from Pic",conn,1,3
rs.AddNew
rs("cat_id")=cat_id
rs("Pic_Title")=Pic_Title
rs("Pic_name")=Pic_name
rs("Pic_img")=Pic_img
rs("Pic_contents")=Pic_contents
rs("Pic_red")=Pic_red
rs.Update
rs.Close
Succeed("<li>添加成功</li>")
end sub
sub list()

按你所提供的第11行应该是:
rs("cat_id")=cat_id

那cat_id这个在数据库里的类型应该是整型的吧.

你Request返回的cat_id变量的类型可能是非整型的.

所以就造成"类型不匹配"错误.

你检查一下返回的cat_id一定要是数字才对.

检查有没有NULL的变量.或数字与字符不相同的情况
加个判断或类型转换语句就行.

系统提示的是rs("cat_id")=cat_id 这句报错
你到后台数据库中看一下cat_id 这个字段的数据类型,应该是把它改为varhchar类型的
试试吧