数据库中chubantime的格式是:2010-4-6,而schubanshijian1和schubanshijian2是通过日历控件输入的,格式是:2010-04-06,于是我用了如下代码,检索符合日期范围的数据,但是,无论输入什么日期,得出来的结果都是全部的数据。条件约束无效。请教一下,如何解决,谢谢! if schubanshijian1<>"" and schubanshijian2<>"" then
sqlstr=sqlstr&" and CONVERT(varchar(100), chubantime, 23)  between '"&schubanshijian1&"' and '"&schubanshijian2&"'"
end if

if schubanshijian1<>"" and schubanshijian2="" then
sqlstr=sqlstr&" and CONVERT(varchar(100), chubantime, 23) >= '"&schubanshijian1&"'"
end if

if schubanshijian1="" and schubanshijian2<>"" then
sqlstr=sqlstr&" and CONVERT(varchar(100), chubantime, 23) <= '"&schubanshijian2&"'"
end if

解决方案 »

  1.   

    CONVERT(varchar(10), cast(chubantime as datetime), 23)
      

  2.   

    CONVERT(varchar(19), chubantime, 120) >= '"convert(varchar(19),&schubanshijian1&,120)"'"
      

  3.   

    chubantime是否是日期类型啊  是的话  sqlstr=sqlstr&" and chubantime between '"&schubanshijian1&"' and '"&schubanshijian2&"'"
      

  4.   

    if schubanshijian1<>"" and schubanshijian2<>"" then
    sqlstr=sqlstr&" and CONVERT(varchar(100), cast(chubantime as datetime), 23) between '"&schubanshijian1&"' and '"&schubanshijian2&"'"
    end if
      

  5.   

    没有CONVERT(varchar(100), chubantime, 23)这样的转换,常见的有20,年月日,0为默认
    试一下
    CONVERT(varchar(10), chubantime, 20)
    //或者
     sqlstr=sqlstr&" and chubantime between '"&schubanshijian1&"' and '"&schubanshijian2&"'"
      

  6.   

    chubantime是日期类型啊,都不行喔,哪位大虾指教一下?谢谢了
      

  7.   

    sqlstr=sqlstr&" and chubantime between "&schubanshijian1&" and "&schubanshijian2&""
      

  8.   

    CONVERT(varchar(10), chubantime, 120)