我用ADO+ACCESS,想过滤出一个时间段的数据,这句话哪里出错?怎么改? 谢谢!
adoQToday.sql.add('select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts where [dodatetime]>=#'+FormatDateTime('yyyy-mm-dd',now)+'#' and [dodatetime]<= #'+FormatDateTime('yyyy-mm-dd',now)+'#');

解决方案 »

  1.   

    adoQToday.sql.add('select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts where [dodatetime]>=#'+FormatDateTime('yyyy-mm-dd',now)+ '# and [dodatetime]<= #'+FormatDateTime('yyyy-mm-dd',now)+'#');#后多了一个'
      

  2.   

    里面的时间我用Datetimepicker。怎么写? 谢谢!
      

  3.   

    dts:=DateToStr(dtpStart.Date);
     dte:=DateToStr(dtpEnd.Date); adoQToday.SQL.Add('select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts where [dodatetime]>='''+dts+''' and [dodatetime]<='''+dte+'''');这样编译通过了。但是程序执行时提示错误。 哪个高手帮我解决一下!谢谢了。
      

  4.   

    adoQToday.SQL.Add('select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts where [dodatetime]>=#'+dts+'# and [dodatetime]<=#'+dte+'#');
    我改成这样也不行。执行时提示错误。
      

  5.   

    adoQToday.sql.add('select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts where Convert(Varchar(10),dodatetime,120)>='+#39+FormatDateTime('yyyy-mm-dd',date)+#39+' and Convert(Varchar(10),dodatetime,120)<='+#39+FormatDateTime('yyyy-mm-dd',date)+#39);
      

  6.   

    那是Delphi+SQL server 的寫法,
      

  7.   


       adoQToday.SQL.Add('select rdn,inkind,cash,dodatetime,indatetime,opemp from accounts where [dodatetime]>=#'+FormatDateTime('yyyy-mm-dd',dtpStart.Date)+'# and [dodatetime]<=#'+FormatDateTime('yyyy-mm-dd',dtpEnd.Date)+'#');
      

  8.   

    TO  coeltdit(睫毛上的冰) 我ACCESS里的时间格式是长型的。带时间的。 你这个写法编译是通过了。但是在程序执行是提示错误!提示:在SQL语句结尾之后找到字符。 怎么解决啊。谢谢了。