一个表中有一个字段为“日期”,类型为Data型,请问,如何根据这一字段来查找某一天的记录?我用如下的语句为何不行呢?请大家指教,谢谢。
query1.sql.add('Select * from db');
query1.sql.add('where 日期 ='''+ edit1.txt + '''');
提示说,类型不一样,请问怎么样才能正确执行语句呢? 

解决方案 »

  1.   

    query1.sql.add('Select * from db');
    query1.sql.add('where 日期 =:p');
    query1.parambyname('p').asdate:=strtodate(edit1.text);
      

  2.   

    可能是你edit1.txt (应该是:edit1.text)的内容不是日期格式吧.可以用DATETIMEPICKER控件啊.query1.sql.add('where 日期 ='''+ datetostr(datetimepicker1.date)+ '''');
      

  3.   

    query1.sql.add('Select * from db');
    query1.sql.add('where 日期 =:p');
    query1.parambyname('p').asdate:=strtodate(edit1.text);
    =======================+就可以注意格式要正确!!
      

  4.   

    用DATETIMEPICKER控件
    query1.sql.add('where 日期 ='+ datetostr(datetimepicker1.date));