一个奇怪的 sql 语句问题,请精通 asp 的高手帮忙看看!谢谢!

lyskycoolsun 2002-06-17 02:40:50
我的一个程序,在 98 + pws 下,调试通过!后来换到 2000+ iis5 环境下,居然不能运行了,后来发现是一个 sql 语句执行错误!

Select Top 10 DateDiff(Day,a.RegDate,getdate()) as DD, a.AccountID,a.AccountName,b.Gender,b.NickName,b.Hot From t_User a,t_Character b Where DateDiff(Day,a.RegDate,getdate()) < 7 and a.AccountID=b.AccountID Order By B.Hot DESC

上面的这一句会执行错误,去掉两处的 DateDiff(Day,a.RegDate,getdate()) ,执行通过!
Select Top 10 a.AccountID,a.AccountName,b.Gender,b.NickName,b.Hot From t_User a,t_Character b Where a.AccountID=b.AccountID Order By B.Hot DESC

还有下面这样的名子,也是!
Select Top 12 a.AccountID ,Sum(a.theCount) As Counter ,b.NickName,b.Gender,c.AccountName From t_EveryHit a,t_Character b,t_User c Where Day(a.UpdateTime) = Day(Getdate()) And Month(a.UpdateTime) = Month(Getdate()) And a.AccountID=b.AccountID And b.AccountID=c.AccountID Group By a.AccountID,b.NickName,b.Gender,c.AccountName Order By Counter Desc
里面用了 sum() ,month() 等函数就不行了!

不知道这是怎么回事,很奇怪,我的系统是 win2000 server 装的有 office 2000 ,asp 程序用的数据酷是 Access 库!
...全文
18 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
marf_cn 2002-06-18
2k和98的时间格式是不同的!
尽管你设的是一样的格式,但它存的格式不同,我也遇到过
回复
lyskycoolsun 2002-06-18
可是这个程序在 98+pws 下就没有问题!

哪里有这方面的资料???我很想找一些 数据库支持的函数的资料!
回复
funboy88 2002-06-18
getdate()在ACCESS中是用NOW()
换过来
好像ACCESS中不支持DATADIFF语句,你换成其他的一个语句试试
两个日期直接相减就是啦,试试
回复
lyskycoolsun 2002-06-18
大家帮帮我吧,我实在是不知道怎么回事!每天在线等待!
回复
xingworld 2002-06-18
DateDiff(Day,a.RegDate,getdate()) --> DateDiff('d',a.RegDate,date())
回复
lyskycoolsun 2002-06-17
Month 为什么不行呢!

而且这个程序在 98+pws 环境下没有问题!到了 2000+iis 下反而不行了!

谁有 sql 里的 函数这方面的资料??
回复
zyhowe 2002-06-17
Select Top 10 DateDiff(d,a.RegDate,getdate()) as DD, a.AccountID,a.AccountName,b.Gender,b.NickName,b.Hot From t_User a,t_Character b Where DateDiff(d,a.RegDate,getdate()) < 7 and a.AccountID=b.AccountID Order By B.Hot DESC


Sum可以用的,但Month就不行了

回复
zyhowe 2002-06-17
Select Top 10 DateDiff(d,a.RegDate,getdate()) as DD, a.AccountID,a.AccountName,b.Gender,b.NickName,b.Hot From t_User a,t_Character b Where DateDiff(d,a.RegDate,getdate()) < 7 and a.AccountID=b.AccountID Order By B.Hot DESC


Sum可以用的,但Month就不行了

回复
zhenhao 2002-06-17
没有碰到过。估计是你的语句写的不对,再仔细检查一下。
回复
lyskycoolsun 2002-06-17
我试了,不行

错误类型:
Microsoft JET Database Engine (0x80040E10)

回复
junxiao 2002-06-17
取当前时间要用now()
把所有的getdate()
换成now()
就行了
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2002-06-17 02:40
社区公告
暂无公告