query1.ExecSQL  改为
Query1.Open

解决方案 »

  1.   

    就是因为Query1.Open不行,我才改为Query1.ExecSql的。
    结果还是不行。
      

  2.   

    select  *  from  tabname  where  日期='mm/dd/yyyy'
      

  3.   

    query1.SQL.Add('select  *  from  tabname  where  日期='''+FormatDateTime('mm/dd/yyyy',Now) +''''  );
      

  4.   

    //Access版
      begin
        s:=datetostr(now);  
        query1.Close;
        query1.SQL.Clear  ;
        //这条语句仅仅对Access有用,但用于SQL Server则不行
        query1.SQL.Add('select  *  from  tabname  where  日期='+ '#' +  
                      s + '#');     
        if  not  query1.Prepared  then  query1.Prepare  ;
        query1.Open;
      end;//SQL Server版
      begin
        s:=datetostr(now);  
        query1.Close;
        query1.SQL.Clear;  //这句一定要在前!!
        with Query1 do
        begin
          with Parameters.AddParameter do
          begin 
            Name := 'simon';
            DataType := ftDate;
            Direction := pdInput;
            Value := s;
          end;
        end;
        query1.SQL.Add('select * from tabname where 日期= :simon');     
        if  not  query1.Prepared  then  query1.Prepare  ;
        query1.Open;
      end;
      

  5.   

    //SQL Server版对Access版也同样有用!
      

  6.   

    首先,你先查一查你的数据库中的时间格式是什么?比如2002-03-02或2002。03。02?
    然后如果是2002-03-02格式,用query1.SQL.Add('select    *    from    tabname    where    日期='+#39+FormatDateTime('yyyy-mm-dd',Now)  +#39    );
    注意格式就对了。否则不行。只gigi
      

  7.   

    OutQuery.Close;
        OutQuery.SQL.Clear;
        OutQuery.SQL.Add('select  *  from  OutTable ');
        OutQuery.SQL.Add(' where  (日期 <=:date1  ) ');    
        OutQuery.ParamByName('date1').Value:=formatdatetime('yy-mm-dd',datetimepicker1.Date);