请教:关于datetime问题

bibibi 2000-07-03 05:36:00
我用的是sql server库,CollectTime字段是DateTime类型,但
date1=date
date2=FormatDateTime(DateAdd("ww",-1,date1))
sql="select * from datebase where CollectTime<='"&date2&"'"
报错:The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value.
请教各位高手该怎么改?
...全文
164 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zigzag 2000-07-05
  • 打赏
  • 举报
回复
'date2为日期型
date2=DateAdd("ww",-1,date1)

'化date2为规定格式字符串yyyy/mm/dd
dim iMonth,strMonth,iDay,strDay,strDate2
iMonth=cstr(DatePart("m",date2)
if iMonth<10 then
strMonth="0"&cstr(iMonth)
else
strMonth=cstr(iMonth)
end if

iDay=cstr(DatePart("d",date2)
if iDay<10 then
strDay="0"&cstr(iDay)
else
strDay=cstr(iDay)
end if

strDate2=cstr(DatePart("yyyy",date2))&"/"&strMonth&"/"&strDay

'将CollectTime转换成yyyy/mm/dd格式再做比较
sql="select * from database where convert(char(10),CollectTime,111)<='"&strDate2&"'"
linyu 2000-07-04
  • 打赏
  • 举报
回复
把你的sql 显示出来就知道了,如果没有猜错,应该是date2是00-XX-XX的格式,要做个函数转换。
Tyro 2000-07-04
  • 打赏
  • 举报
回复
试试把&符号前后加上空格
sql="select * from datebase where CollectTime<='" & date2 & "'"
leslielu 2000-07-04
  • 打赏
  • 举报
回复
formatdatetime只是转化为字符串,不要用它,直接加在你的sql语句中,格式如你所写。
date1=date
date2=DateAdd("ww",-1,date1)
sql="select * from datebase where CollectTime<='"&date2&"'"
bibibi 2000-07-04
  • 打赏
  • 举报
回复
用"&date2还是报错:语句未结束。
FormatDateTime后不是已转成DateTime型了吗?应做怎样的函数转换呢?
望指教!
cjlong 2000-07-03
  • 打赏
  • 举报
回复
应是
sql="select * from datebase where CollectTime<="&date2

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧