parameters.ParamValues['d1']:=datetimepicker1.DateTime;
      parameters.ParamValues['d2']:=datetimepicker2.DateTime;
改成:
 parameters.ParamValues['d1']:='to_date('''+datetostr(DateTimePicker1.Date)+''',''yyyy-mm-dd'')';
parameters.ParamValues['d2']:='to_date('''+datetostr(DateTimePicker2.Date)+''',''yyyy-mm-dd'')';

解决方案 »

  1.   

    with datamodule1.tempadoquery1 do
      begin
        close;
        sql.Clear;
        sql.Add('create or replace view yaok_rktj as ');
        sql.Add('select a.ypdm ,sum(a.sl) sl,sum(a.je) je  from a, b');
        sql.add('where b.rkrq >= to_date(:d1,''yyyy-mm-dd'')');
        sql.add(' and b.rkrq < to_date(:d1,''yyyy-mm-dd'') and (a.rkdh = b.rkdh)  group by a.ypdm');    parameters.ParamValues['d1'] := datetostr(datetimepicker1.DateTime);
        parameters.ParamValues['d2'] := datetostr(datetimepicker2.DateTime);
        prepared;
        execsql;
      end;
      

  2.   

    with adoquery1 do
      begin
        close;
        sql.Clear;
        sql.Add('create or replace view yaok_rktj as ');
        sql.Add('select a.ypdm ,sum(a.sl) sl,sum(a.je) je  from a, b');
        sql.add('where b.rkrq >= to_date('+QuotedStr(datetostr(datetimepicker1.DateTime))+',''yyyy-mm-dd'')');
        sql.add(' and b.rkrq < to_date('+QuotedStr(datetostr(datetimepicker2.DateTime))+',''yyyy-mm-dd'') and (a.rkdh = b.rkdh)  group by a.ypdm');
        prepared;
        execsql;
      end;
      

  3.   

    try:
    parameters.ParamByName('d1').AsDateTime:=datetimepicker1.DateTime;
    parameters.ParamByName('d2').AsDateTime:=datetimepicker2.DateTime;
      

  4.   

    parameters.ParamByName('d1').value:=formatdatetime('yyyy-mm-dd',datetimepicker1.Date);
    parameters.ParamByName('d2').value:=formatdatetime('yyyy-mm-dd',datetimepicker2.date);