asp错误类型: Microsoft (0x80040E07) 标准表达式中数据类型不匹配。 /wyhd02.asp,

[复制链接]
查看11 | 回复4 | 2011-4-16 14:36:35 | 显示全部楼层 |阅读模式
"&"返回问题列表!"
end if%>

"" then
dim wtids,rs,sql,conn
wtids=Request.Form("hd")
Set conn=Server.CreateObject("ADODB.Connection")

conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("data/ilsq.mdb")

Set rs = Server.CreateObject("ADODB.Recordset")

sql="select * from b05 where wtid='"&wtids&"'"

rs.open sql,conn,3,2

Response.Write ""

Response.Write ""

Response.Write "" & rs("wtbt") & ""

Response.Write ""

Response.Write ""

Response.Write "" & rs("wtnr") & ""

Response.Write ""

Response.Write ""

Response.Write "" & rs("yhm") & ""

Response.Write "" & rs("twsj") & ""

Response.Write ""
Response.Write ""

end if
%>
access数据表中字段有:
wtid 自动编号
wtbt 文本
wtnr文本
twsj 文本
yhm 文本

回复

使用道具 举报

千问 | 2011-4-16 14:36:35 | 显示全部楼层
sql="select * from b05 where wtid='"&wtids&"'"改成sql="select * from b05 where wtid="&cint(wtids)cint(wtids)也可以搞成clng(wtids),强制转化一下数据,可以保证即使wtids是字符串或空的情况下语句也不会出错。另外,只是在查询的话,游标指针改成 1,1如果要更新数据,用1,3
回复

使用道具 举报

千问 | 2011-4-16 14:36:35 | 显示全部楼层
sql="select * from b05 where wtid='"&wtids&"'"这句SQL有错误,因为wtids是自动编号,所以应该算是数字型的,而你'"&wtids&"'则是字符型,自然就无法转换了,改成如下:(要保证wtids能正确取到值并且是数字)sql="select * from b05 where wtid="&wtids
回复

使用道具 举报

千问 | 2011-4-16 14:36:35 | 显示全部楼层
rs.open sql,conn,3,2这个应该是1,3或者1,2,1,1吧
回复

使用道具 举报

千问 | 2011-4-16 14:36:35 | 显示全部楼层
rs.open sql,conn,3你这样试试,,asp我忘了,,记的好像是这样
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行