var
  strdate1,strdate2:string;
    strDate1:=FormatDateTime('yyyy-mm-dd',DateTimePicker1.DateTime );
    strDate2:=FormatDateTime('yyyy-mm-dd',DateTimePicker1.DateTime);
    ADOQuery1.Close;
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Add('select sj from kq where kh=''' + strkh + ''' and rq>#'+strdate1+'#' +'and rq<#'+ strdate2+'#' +‘order by sj);
    ADOQuery1.open;
上面的程序运行之后为什么查不出结果啊?当我任意去掉大于或者小于其中的一个条件就行啦!请各位前辈指正,多谢!!!

解决方案 »

  1.   

    strDate1=strDate2啊
    既比1大又比1小的数是什么啊?
    能查出结果才怪了
      

  2.   

    在Access中sj字段的格式是这样的:1899-12-30 6:19:00
    如何屏蔽掉前面的年月日,只显示时间啊!
     var
      strdate1,strdate2:string;
        strDate1:=FormatDateTime('yyyy-mm-dd',DateTimePicker1.DateTime );
        strDate2:=FormatDateTime('yyyy-mm-dd',DateTimePicker1.DateTime);
        ADOQuery1.Close;
        ADOQuery1.SQL.Clear;
        ADOQuery1.SQL.Add('select sj from kq where kh=''' + strkh + ''' and rq>#'+strdate1+'#' +'and rq<#'+ strdate2+'#' +‘order by sj);
        ADOQuery1.open;
      

  3.   

    如果用DBGrid控件呢?怎么做啊
      

  4.   

    选中你的adoquery1,然后右键菜单 add field
    将字段加进去;
    然后在时间字段的ongettext事件中写
    copy('1899-12-30 6:19:00',12,7);
      

  5.   

    这个事件是字段的事件
    有的
    你要选种一个tfield对象
    在对象观察器才可以看到
      

  6.   

    在delphi的帮助中输入ongettext查找可找到用法
      

  7.   

    比较日期,
    可以用between.这样一般不会出错。
      

  8.   

    可我ADOQuery的SQL语句是动态加载的,没有设ADOQuery的SQL属性,所以字段编辑器
    加不进字段,菜单Add Field加不进去,没法实现COPY的功能。
       当我设了SQL属性之后,按你的方法加了下面一条语句:
       copy('1899-12-30 6:19:00',12,7);
       所有时间显示就为空了。