标题:asp两个时间比较问题
取消只看楼主
lyuyyw
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2007-3-19
 问题点数:0 回复次数:3 
asp两个时间比较问题
我现在做得系统需要这样一个功能:数据库里面已经一个字段是我输入进去的,记录将来客户约见时间的时间段love_time 类型是常规日期,现在我需要实现查询几个小时内到期的约见订单 这几个小时是我手动输入 通过表单提交 然后通过对比系统现在的时间与订单里面时间的间隔 是否小于我提交的小时数来检索的记录 我用的是dateadd()函数 代码是这样的:
keyusertime=request("keyusertime")
keytime=dateadd("h",keyusertime,now())
If keyusertme<>"" Then
sql="select * from love where love_time< '%"&keytime&"%' order by love_time asc"
Else
sql="select * from love order by love_time asc"
End If

keyusername是我从表单传过来的小时数 love_time是数据库里面的记录约见时间的 这个语句错误:Microsoft JET Database Engine (0x80040E07)
标准表达式中数据类型不匹配。

请教高手是什么问题!!有更好的解决方法没有???
搜索更多相关主题的帖子: asp 时间 
2007-08-17 08:39
lyuyyw
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2007-3-19
得分:0 

已经试过拉! 但是提取出来的是全部数据,麻烦楼上高手再看看程序啊
我看你语句select * from love where DateDiff('h',love_time,keytime)<5 order by love_time asc 这句:5不是手动设的 而是从表单接受的 (也就是你格式话的那个变量“keyusertime”) ;而且我想还是把括号里面的“keytime”改为"now()",应该是这样的吧,所以我改正后语句是:

select * from love where date('h',love_time,now())<'"keyusertime"' order by love_time asc

但是程序出错,好像是我变量引号加的不对??



誓死捍卫asp的领导地位!
2007-08-17 10:07
lyuyyw
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2007-3-19
得分:0 
已经试过了 还是报错 快要疯了!!




麻烦了 大哥!!!

誓死捍卫asp的领导地位!
2007-08-17 10:24
lyuyyw
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2007-3-19
得分:0 

已经换过了,表单提交是数字 所以应该改成:
keytime=clng(request("keytime"))
if keytime<>"" then
sql="select * from love where datediff('h',now(),love_time)<keytime order by love_time asc"
else
sql="select * from love order by love_time asc"
end if


但是老出错 ,提示“至少一个参数没有被制定值”
是keytime没有传值成功 !!但是我测试了,keytime确定传值了,是什么问题???


誓死捍卫asp的领导地位!
2007-08-17 11:54



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-163341-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.313069 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved