sql="select top 1 * from book where id > "&aaa& " order by id" 可以运行。我想再加一个条件,如下所示,就不能运行了,报错:Microsoft JET Database Engine 错误 '80040e07' ; 标准表达式中数据类型不匹配。
sql="select top 1 * from book where number="& a &" and id> "&aaa&" order by id DESC"
应该如何修改?请指教,谢谢。
asp,数据类型不匹配。
答案:2 悬赏:70
解决时间 2021-12-12 12:39
- 提问者网友:南佳人~
- 2021-12-11 22:52
最佳答案
- 二级知识专家网友:不服输就别哭
- 2021-12-11 23:47
你先按以下方法排除问题.
第一,你先打来你的数据库看一看 number的字段,里面有没有一个数据,符合一个条件是: number=a的值,并且同时要id>aaa的值.如果你的数据库里面都没有的话,那么,肯定会出错的.
第二,如果上面都符合了,那你先把你request过来的 a 与 aaa 这个变量,做一个格式转换,如: a=int(request.form("a")) 把这些数据转为整形先.
第三,如果上述两个方法这样都不行的话,你上面的那条SQL语句应该分开两段来写了..先符合第一个条件: number='"a"',如果可以的话,再进行查找第二条纪录.这应该可以的了..
最后祝你成功..加油... ^_^
第一,你先打来你的数据库看一看 number的字段,里面有没有一个数据,符合一个条件是: number=a的值,并且同时要id>aaa的值.如果你的数据库里面都没有的话,那么,肯定会出错的.
第二,如果上面都符合了,那你先把你request过来的 a 与 aaa 这个变量,做一个格式转换,如: a=int(request.form("a")) 把这些数据转为整形先.
第三,如果上述两个方法这样都不行的话,你上面的那条SQL语句应该分开两段来写了..先符合第一个条件: number='"a"',如果可以的话,再进行查找第二条纪录.这应该可以的了..
最后祝你成功..加油... ^_^
全部回答
- 1楼网友:风格单纯
- 2021-12-12 00:13
在asp中的变量没有类型的,在用的时候会自动转换为需要的类型。
提示类型错误是asp程序无法自动的将你的数据转换为相应的类型。
你首先确定你的edate的值是什么。
比如这个值的格式是"yyyy-mm-dd","hhhh:mm:ss"等类似于时间或者日期的格式,它都可以自动转换为时间或日期类型的数据输入到表里,但是如果是单纯的数字,如“2005”或者是汉字,就会出现错误。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯