表中时期/时间字段OrderDate,现以日期做为查询条件.条件来自于文本框DateText.Text;
以下是使用过的SQL:
select * from OrderTable where format(OrderDate,'yyyy-mm-dd')='"+DateText.Text+"'";select * from OrderTable where format(OrderDate,'yyyy-mm-dd')='"+DateTime.Parse(DateText.Text).ToString("yyyy-mm-dd")+"'";select * from OrderTable where format(OrderDate,'yyyy-mm-dd')='"+DateTime.Parse(DateText.Text).ToLongDateString()+"'";
select * from OrderTable where cdate(OrderDate)=#"+DateTime.Parse(DateText.Text)+"#";select * from OrderTable where datevalue(OrderDate)=#"+DateTime.Parse(DateText.Text)+"#";以上没有一条成功的,好象都没有报错.然而什么结果也查询不到!!!!
另外还有一个怪事,不知是不是本人系统有毛病,请看:DateTime.Parse("2005-01-04").ToShortDateString() 结果正确:2005-1-4;

DateTime.Parse("2005-01-04").ToString("yyyy-mm-dd")结果奇怪:2005-00-04;

解决方案 »

  1.   

    ToString("yyyy-mm-dd")
    ==========>
    ToString("yyyy-MM-dd")mm 系统认为是分而不是月,大小写是有区别的
      

  2.   

    (1)可能格式不对.
    (2)你把mm换成MM.
      

  3.   

    是你写错了。wangsaokui(无间道III(终极无间)) ( ) up
      

  4.   

    1.因为是access所以改成:"select * from OrderTable where datevalue(OrderDate)=\#"+DateTime.Parse(DateText.Text.Trim())+"\#";
    2.mm-->MM