query1.close;
query1.sql.clear;
query1.sql.add('select * from 表名');
query1.sql.add('where 日期=(:rq)');
query1.fieldbyname('rq').asdatetime:=datetimepicker1.datetime;
query1.open;
 我用access数据库,表中日期字段是日期格式。
表中明明有我在datetimepicker中给出的时间,可是就是查询不出来,请问是怎么回事?
请详细点,分不够再给。

解决方案 »

  1.   

    你这句话写的石不是有问题阿,access没用过,但是感觉
    where 日期=(:rq)是不是不对阿,好像不该有这个括号吧
    query1.fieldbyname好像也不对吧
    是不是应该是query1.parambyname啊!
      

  2.   

    query1.sql.add('where 日期=(:rq)');
    query1.fieldbyname('rq').asdatetime:=datetimepicker1.datetime;
    =====>
    query1.sql.add('where 日期=:rq');
    query1.ParamByName('rq')..................
      

  3.   

    浮点数比较最好不要用“=”,而用“>=”或“<=”,日期、时间实际上也是浮点数
      

  4.   

    你看看
    DateTimePicker1.time这里需要设的,你有XXXX-XX-XX XX:XX:XX 和XXXX-XX-XX,比较,当然会出问题了~~把time属性,改成一个初始值~~~比方说00:00:00,再用>= <=什么的比较
      

  5.   

    query1.close;
    query1.sql.clear;
    query1.sql.add('select * from 表名');
    query1.sql.add('where 日期='#'+datetostr(datetimepicker1.date)+'#'');
    query1.open;
    这样试一下,肯定行
      

  6.   

    query1.parambyname('rq').asdatetime:=datetostr(datetimepicker1.datetime)