ADOQuery1.Close;
  ADOQuery1.SQL.Clear;
  sql:='select * from A表 where riqi>='+'#'+datetimetostr(now)+'#';
  ADOQuery1.SQL.Text:=sql;
  ADOQuery1.Open;
请问为什么这样会报错啊?

解决方案 »

  1.   

    sql:='select * from A表 where riqi>='+'#'+datetimetostr(now)+'#';
    ------------------------------------------------------------------
    sql:='select * from A表 where riqi>='+'#'+datetimetostr(now)+'#'';
      

  2.   

    ADOQuery1.Close;
      ADOQuery1.SQL.Clear;
      sql:='select * from A表 where riqi>=:date';
      ADOQuery1.SQL.Text:=sql;
      ADOQuery1.Parameters[0].values:=now;
      ADOQuery1.Open;
      

  3.   

    var aYear,aMonth,aDay:word;
        aTmpStr:String;  DecodeDate(Now,aYear,aMonth,aDay);
      aTmpStr:=Format('%d-%d-%d',[aMonth,aDay,aYear]);
      
      ADOQuery1.Close;
      ADOQuery1.SQL.Clear;
      sql:='select * from A表 where riqi>='+'#'+datetimetostr(aTmpStr)+'#';
      ADOQuery1.SQL.Text:=sql;
      ADOQuery1.Open;  转换过程最好做成一个函数。试试吧,应该可以。
      

  4.   

    sql:='select * from A表 where riqi>='+'#'+datetimetostr(Date)+'#';
      

  5.   

    sql:='select * from A表 where riqi>=''#''+datetimetostr(Date)+''#''';
      

  6.   

    var Hour, Min, Sec, MSec:word;
        aTmpStr:String;  DecodeTime(Now, Hour, Min, Sec, MSec);
      aTmpStr:=Format('%d:%d:%d',[Hour,Min,Sec]);
      
      ADOQuery1.Close;
      ADOQuery1.SQL.Clear;
      sql:='select * from A表 where riqi>='+'#'+datetimetostr(aTmpStr)+'#';
      ADOQuery1.SQL.Text:=sql;
      ADOQuery1.Open;