procedure TForm1.Button1Click(Sender: TObject);
var
x:string;
begin
x:=edit1.Text;
query1.Close;
query1.SQL.Clear;
query1.sql.Add('select * from people where 姓名 查询like'+#39+'x'+#39);
query1.open;
dbgrid1.datasource:=datasource1;
dbgrid1.refresh;
end;
end.
其中 people为表名 
但是查询结果dbgrid中的结果总为空 

解决方案 »

  1.   

    query1.sql.Add('select * from people where 姓名 like %' + x + '%');
      

  2.   

    对用楼上的。或
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    query1.Close;
    query1.SQL.Clear;
    query1.sql.Add('select * from people where 姓名 like "%'+trim(edit1.Text)+'%"';
    query1.open;
    dbgrid1.datasource:=datasource1;
    dbgrid1.refresh;
    end;
    end.
      

  3.   

    这样写
    query1.sql.Add('select * from people where 姓名 like ''%'+Edit1.Text+'%''');
      

  4.   

    adoquery.sql.add(select * from table1 where field1 like %'+quotedstr(edit1.text)+'%')
    就可以了,如果类型不对的话就更改quotedstr部分
      

  5.   

    正确的是: field1 like ''%'+quotedstr(edit1.text)+'%'''注意加在百分号前后的引号就可以了
      

  6.   

    field1 like ''%'+quotedstr(edit1.text)+'%'''
    同意楼上
      

  7.   

    query1.sql.Add('select * from people where 姓名 查询like'+#39+'%'+'x'+'%'+#39);