各位大虾: 
          你们好!
   我在做统计的时候怎么就是不显示出数据,我在界面上的组件是:query,database,DateTimePicker1,DateTimePicker2,dbgrid,我想统计出来的数据在dbgrid显示出来,可是数据项没有数据,我的程序是这样的:
var   string:string;
  begin
str:='select * from 住户报修信息 where  住户报修信息.报修日期>=('+formatdatetime('yyyy-mm-dd',DateTimePicker1.Date)+') AND (住户报修信息.报修日期<='+formatdatetime('yyyy-mm-dd',DateTimePicker2.Date)+')';
          query1.Close;
        query1.SQL.Clear;
       query1.sql.Add(str);
       query1.open;
       end;
我知道是日期设置出了问题,可是我不知道where后的条件怎么加啊,即日期怎么样设置啊,我在线等,急救!!!!

解决方案 »

  1.   

    在日期型数据两边加类型分隔符。如果只是使用日期,将字段类型高为char size(10)比较方便,外部引用时加引号就行了。
    str:='select * from 住户报修信息 where  住户报修信息.报修日期>=('''+formatdatetime('yyyy-mm-dd',DateTimePicker1.Date)+''') AND (住户报修信息.报修日期<='''+formatdatetime('yyyy-mm-dd',DateTimePicker2.Date)+''')';
    或者 用BETWEEN选择在两个值之间
    str:='select * from 住户报修信息 where  住户报修信息.报修日期 between '''+formatdatetime('yyyy-mm-dd',DateTimePicker1.Date)+''' AND '''+formatdatetime('yyyy-mm-dd',DateTimePicker2.Date)+'''';