...
             close;
             sql.clear;
             sql.Add('Select CustomerId,CustomerName  where customername like ''% :name %''');<------------
     ParamByName('name').Value:=edit1.text ;
             prepare;
             open;
     ...

解决方案 »

  1.   

    close;
                 sql.clear;
                 sql.Add('Select CustomerId,CustomerName  where customername like  :name ');
         ParamByName('name').Value:='%'+edit1.text +'%';
                 prepare;
                 open;
      

  2.   

    close;
                 sql.clear;
                 sql.Add('Select CustomerId,CustomerName  from TableName
    where customername like '+'''% :name %''');-----<注意不用用中文的:
         ParamByName('name').Value:=edit1.text ;
                 prepare;
                 open;
      

  3.   

    还是出错!我在sql 中直接写
    select * from table where customername like %西安%
    也是出错。
      

  4.   

    select * from table where customername like '%西安%'
      

  5.   

      select * from table where customername like %西安%
      
      你忘了加引号呀  select * from table where customername like '%西安%'
     
      

  6.   

    建议:把你的表名(Table)重新命名!!
    建议:把你的表名(Table)重新命名!!
    建议:把你的表名(Table)重新命名!!如:Customer!
      

  7.   

    customername是字符型,所以 like %西安% 应写成like '%西安%'close;
    sql.clear;
    sql.Add('Select CustomerId,CustomerName from table where customername like  :name ');
    ParamByName('name').Value:='%'+edit1.text +'%';
    prepare;
    open;