看看这样行不
sql.add('SELECT * FORM DB1 WHERE SELLDATE='''+EDIT1.TEXT+'''');

解决方案 »

  1.   

    你的access的版本?
    你的机器的日期格式?
    你的Edit1.Text的内容?
      

  2.   

    access2000
    2002-8-30
    2002-8-30
      

  3.   

    另外,我试过用参数来查询,但还是出现了找不到参数的问题
     begin
       sql.Clear;
       sql.add('SELECT * FORM ctxs WHERE SELLDATE=:qselldate');
       Parameters.ParamValues['qselldate']:=strtodate('2002-08-30');
         open;
     end;
      

  4.   

    是呀!不该有问题sql.add('SELECT * FORM DB1 WHERE SELLDATE='''2002-8-30''');
    或者
    sql.add('SELECT * FORM DB1 WHERE SELLDATE='''2002-8-30 0:0:0''');看看出错不
      

  5.   

    讨厌的csdn,老是服务器忙!不好意思,笔误:多了'
    sql.add('SELECT * FORM DB1 WHERE SELLDATE=''2002-8-30''');
    或者
    sql.add('SELECT * FORM DB1 WHERE SELLDATE=''2002-8-30 0:0:0''');
      

  6.   

    那就怪了。sql.add('SELECT * FORM DB1 WHERE SELLDATE=#2002-8-30#');
    这个呢?
      

  7.   

    这个我试过也一样,会不会是ado的bug!!!!!
      

  8.   

    这两种方式我这里都没问题。你把adoconnection 变成odbc方式的你再看看
      

  9.   


     begin
       sql.Clear;
       sql.add('SELECT * FORM ctxs WHERE SELLDATE=:ttt1');
       Parameters.parameters[0].value:=strtodate('2002-08-30');
         open;
     end;
    这样不行的你最好是这样做
    另外捕获一下错误,上面那样写应该没有问题的
      

  10.   

    select * form ...拼写错误!!!
    应为 select * from ...