检查你的 Request.Form("Date_B")
Request.Form("Date_E")
的值是什么?

解决方案 »

  1.   

    表中的 Balance_Date 是不是非 datetime 类型,可能其中有些数据不满足日期格式吧!
      

  2.   

    你把这条语句打印出来,看结果是什么?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
      

  3.   

    并试试在查询分析器中执行下面这句,看是否报错:select cast('2004-05-03' as datetime)
      

  4.   

    select cast('2004-05-03' as datetime)
    这句没有错!!!
      

  5.   

    打印出来是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
      

  6.   

    如果你表中的 Balance_Date 不是datetime类型,用下面的语句检查你表中的那些数据非法select * from Out_Balance WHERE isdate(Balance_Date )=0
      

  7.   

    谢谢
    问题已经解决!
    不是sql语句问题,不好意思了!
      

  8.   

    本来这数据库是access的,我换成sql的,因为时间在access里用的#,我就把所有的#都替换了,谁知道<!--#Include File="../Pub_File.Asp"-->这里的#也被我替换掉了
    非常不好意思,非常感谢zjcxc(邹建)