表main里有一个Tdatetime字段,为了查找该字段里日期小于当前输入日期的记录,我在按钮后写了如下代码:
var
  datenow: Tdatetime;
begin
   datenow:=datetimepicker1.Datetime;
   with query1 do
      begin
      close;
      sql.Clear;
      sql.Add('select * from main where 计划检定日期<searchdate');
      unprepare;
      parambyname('searchdate').AsDatetime:=datenow;
      prepare;
      open;
      end;
end;但是运行不能通过,错误信息“Query1:未发现参数'searchdate”
searchdate不是用parambyname('searchdate').AsDatetime:=datenow;定义过了吗?请高手指教?谢谢!

解决方案 »

  1.   

    var
      datenow: Tdatetime;
    begin
       datenow:=datetimepicker1.Datetime;
       with query1 do
          begin
          close;
          sql.Clear;
          sql.Add('select * from main where 计划检定日期<:searchdate');
                                                  --注意是:searchdate
          unprepare;
          parambyname('searchdate').AsDatetime:=datenow;
          prepare;
          open;
          end;
    end;
      

  2.   

    在SQL语句中.参数要用冒号来引导!:SearchDate
      

  3.   

    请wooden954(wooden) 见谅,分不够用了,呵呵!