你把这条语句打印出来,看结果是什么?SELECT * FROM Out_Balance WHERE (Balance_Date BETWEEN CAST('"&Request.Form("Date_B")&"' AS datetime) AND CAST('"&Request.Form("Date_E")&"' AS datetime)) ORDER BY Balance_Date DESC
并试试在查询分析器中执行下面这句,看是否报错:select cast('2004-05-03' as datetime)
select cast('2004-05-03' as datetime) 这句没有错!!!
打印出来是SELECT * FROM Out_Balance WHERE (Balance_Date BETWEEN CAST('2004-05-03' AS datetime) AND CAST('2003-05-03' AS datetime)) ORDER BY Balance_Date DESC
如果你表中的 Balance_Date 不是datetime类型,用下面的语句检查你表中的那些数据非法select * from Out_Balance WHERE isdate(Balance_Date )=0
FROM Out_Balance
WHERE (Balance_Date BETWEEN CAST('"&Request.Form("Date_B")&"' AS datetime) AND
CAST('"&Request.Form("Date_E")&"' AS datetime))
ORDER BY Balance_Date DESC
这句没有错!!!
问题已经解决!
不是sql语句问题,不好意思了!
非常不好意思,非常感谢zjcxc(邹建)