表中时期/时间字段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;
以下是使用过的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;
==========>
ToString("yyyy-MM-dd")mm 系统认为是分而不是月,大小写是有区别的
(2)你把mm换成MM.
2.mm-->MM