with query1 do
   begin
   close;
   sql.clear;
       sql.add('Select * From "db\show2.DB" As show');
  //  sql.add('where 日期 between :date1 and :date2');
   //  sql.add('where 陈猛基本分="8"');
     sql.add('where 日期 between :date1 and :date2');
  parambyname('date1').Value:=strtodate(datetostr(DateTimePicker1.Date)); //问题语句
  parambyname('date2').Value:=strtodate(datetostr(DateTimePicker1.Date));
   //  sql.add('where 组别 between :date1 and :date2');
  //  parambyname('date1').Value:=edit2.text; //问题语句
 // parambyname('date2').Value:=edit2.text;   open;
    end;
   if query1.RecordCount=0 then
我只会写找出日期的记录

解决方案 »

  1.   

    假设你在dxDateEdit1和dxDateEdit2里面输日期
    在edit1里面输人名
    var
    str1,str2 : string;str1:=formatDateTime('yyyy/mm/dd',dxDateEdit1.Date);
    str2:=formatDateTime('yyyy/mm/dd',dxDateEdit2.Date);with query1 do
       begin
       close;
       sql.clear;
       sql.add('Select * From 表 where 日期 between ' + str1 + 'and' + str2 + 
              'and 姓名=' + #39 +edit1.text+ #39);
       open;
       end;