函数功能:还是用例子说得清楚一点。
例:ACCESS数据表中有一datetime型字段A,我现在要用sql语句来实现查询,查询条件为一个开始日期(日期型),一个结束日期(日期型)。
现在问题是:如果我把查询条件改为日期时间型,则查询出错,如果不改则什么结果都查不到。请大家出点主意! 应该有一个函数来转换字段类型的?
最好不要改数据表结构啦!

解决方案 »

  1.   

    'WHERE billdate between #' + FormatDateTime('YYYY-MM-DD',dtpBegin.DateTime) + '# and #' + FormatDateTime('YYYY-MM-DD',dtpEnd.DateTime) + '# '
    加'#'就可以!!
      

  2.   

    看一看你的SQL 语句是怎么写的呢?空口无凭呀!不好说!一般情况下,我是这么写的:
    adoquery1.close;
    adoquery1.sql.clear;
    adoquery1.sql.add('select * from table1 where thedate>:SDate and thedate <:EDate');
    adoquery1.Parameters.ParamByName('SDate').value := formateDateTime('yyyy-MM-dd',DateTimePicker1.date);
    adoquery1.Parameters.ParamByName('EDate').value := formateDateTime('yyyy-MM-dd',DateTimePicker2.date);