query1.ParamByName('qsrq').value:='''' + strtodate(edit1.text) + '''';

解决方案 »

  1.   

    '#'+ strtodate(edit1.text) + '#'
      

  2.   

    不要使用参数,用下面的试试
    query1.close;
         query1.sql.clear;
         query1.sql.add('select Jname as 局名,Xinghao as 型号,Guige as 规格,Biaohao as 表号,Riqi as 日期,Shijian as 时间,Users as 操作员');
         query1.sql.add(' from smzk where 1=1');
         if edit1.text<>'' then
            begin
              query1.sql.add(' and convert(char(10),riqi,120)>= '+''''+strtodate(edit1.text+'''');
              query1.sql.add(' order by Biaohao');
              query1.sql.add('');
              query1.open;
            end;
      

  3.   

    to Carfield(一只特别的猫) :按你的做法出现类型不匹配,(注:riqi字符型字段.)
      

  4.   

    query1.close;
         query1.sql.clear;
         query1.sql.add('select Jname as 局名,Xinghao as 型号,Guige as 规格,Biaohao as 表号,Riqi as 日期,Shijian as 时间,Users as 操作员');
         query1.sql.add(' from smzk where 1=1');
         if edit1.text<>'' then
            begin
              query1.sql.add(' and convert(char(10),riqi,120)>= '''+edit1.text+''');
              query1.sql.add(' order by Biaohao');
              query1.sql.add('');
              query1.open;
            end;
      

  5.   

    szkxy(雨鱼) :你的做法也有问题,unterminated string
      

  6.   

    如果能保证日期格式为 yyyy-mm-dd, 则可直接用字符比较:

              query1.ParamByName('qsrq').asdatetime:=strtodate(edit1.text);

         Query1.ParamByname('Qsrq').asString:=Edit1.Text;
              
      

  7.   

    to johnsonrao(johnson):只有你说对了!结贴