设为首页收藏本站

新微赢技术网

 找回密码
 注册
搜索
热搜: 回贴
查看: 113|回复: 9
打印 上一主题 下一主题

[Microsoft][ODBC Microsoft Access Driver] 标准表达式中数据类型不匹配怎 ...

[复制链接]
跳转到指定楼层
1#
发表于 2010-1-8 03:58:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
就是上面的问题,我实在不知道怎么解决了。

错误代码如下:
<%
dim rs
dim sql
set rs=server.createobject("adodb.recordset")
sql="select * from User where Userid='"&Replace(request("userid"), "'", "''")&"'"
rs.open sql,conn,1,3 ------在这里报错。。。。我想可能是上面的SQL语句有错

userid=rs("userid")
password=rs("password")
name=rs("name")
email=rs("email")
nos=rs("nos")
send=rs("send")
money=rs("money")
adress=rs("adress")
sex=rs("sex")
Province=rs("Province")
city=rs("city")
dat=rs("date")
pay=rs("pay")
usercount=rs("usercount")
userip=rs("userip")
baoyue=rs("baoyue")
%>

请大家指点一下。谢谢
2#
发表于 2010-1-8 03:59:01 | 只看该作者
userid=rs("userid") '这里加一句,现在说这里类型不匹配
userid=Replace(request("userid"), "'", "''")
dim rs
dim sql
set rs=server.createobject("adodb.recordset")
sql="select * from User where Userid='" & userid & "'"
rs.open sql,conn,1,3
帮帮忙!谢谢
回复 支持 反对

使用道具 举报

3#
发表于 2010-1-8 03:59:04 | 只看该作者
你的意思是不是改成这样?
userid=request("userid")
userid=Replace(userid"'", "''")
dim rs
dim sql
set rs=server.createobject("adodb.recordset")
sql="select * from User where Userid='" & userid & "'"
rs.open sql,conn,1,3
这样又报错说:标准表达式中数据类型不匹配。
说错误的是这句
rs.open sql,conn,1,3
但是我觉得错的应该是SQL语句,SQL语句错应该是变量userid错。你能帮我再看看吗?非常感谢!
回复 支持 反对

使用道具 举报

4#
发表于 2010-1-8 03:59:07 | 只看该作者
sql="select * from User where Userid='"&Replace(request("userid"), "'", "''")&"'"
楼主的userid里有单引号?报什么错误?
回复 支持 反对

使用道具 举报

5#
发表于 2010-1-8 03:59:10 | 只看该作者
对不起,手误,打错了。
应该是
userid=rs("userid")
改成
userid=request("userid")
回复 支持 反对

使用道具 举报

6#
发表于 2010-1-8 03:59:13 | 只看该作者
sql="select * from User where Userid='"&Replace(request("userid"), "'", "''")&"'"

如果输入的是 '式式 它的结果就是
sql="select * from user where userid='''式式'"
我觉得这样不好

sql="select * from User where Userid='"&Replace(request("userid"), "'", "")&"'"
回复 支持 反对

使用道具 举报

7#
发表于 2010-1-8 03:59:16 | 只看该作者
标准表达式中数据类型不匹配
回复 支持 反对

使用道具 举报

8#
发表于 2010-1-8 03:59:19 | 只看该作者
我传递的userid是:
admin/useredit.asp?userid=351
就是打开useredit.asp
接收的时候
报错误:标准表达式中数据类型不匹配,说是这行rs.open sql,conn,1,3 有错!斑竹帮帮忙,谢谢
userid=request("userid")
userid=Replace(userid"'", "''")
dim rs
dim sql
set rs=server.createobject("adodb.recordset")
sql="select * from User where Userid='" & userid & "'"
rs.open sql,conn,1,3
回复 支持 反对

使用道具 举报

9#
发表于 2010-1-8 03:59:22 | 只看该作者
rs.open sql,conn,1,3
后面的 3 改成 1
回复 支持 反对

使用道具 举报

10#
发表于 2010-1-8 03:59:25 | 只看该作者
userid=rs("userid") '这里加一句
userid=Replace(request("userid"), "'", "''")
dim rs
dim sql
set rs=server.createobject("adodb.recordset")
sql="select * from User where Userid='" & userid & "'"
rs.open sql,conn,1,3
把上面改成这样再试试
回复 支持 反对

使用道具 举报

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

本版积分规则

申请友链|小黑屋|最新主题|手机版|新微赢技术网 ( 苏ICP备08020429号 )  

GMT+8, 2024-11-19 10:45 , Processed in 0.121872 second(s), 9 queries , Gzip On, Memcache On.

Powered by xuexi

© 2001-2013 HaiAn.Com.Cn Inc. 寰耽

快速回复 返回顶部 返回列表