指定query.DatabaseName
要放上TDataSource 控件,设置DataSet为Query
指定DbGrdi.DataSource为DataSourcebegin
  with query do
  begin
    close;
    sql.clear;
    sql.add('select .... ');
    sql.add('where field=''' +edit1.text+'''');
    open; 
  end;
end;
这样就可以显示在DBGrid里面了

解决方案 »

  1.   

    楼上的,应该为
    sql.add('where field like:a');
    sql.parabyname('a').asstring=' like'+edit1.text;
      

  2.   

    不用Table了,就用一个Query就OK。
    DataSource1的DataSet指定为Query1,
    DBGrid的DataSource为DataSource1,
    Query1.close;
    Query1.SQL.Add(Select * from Table);
    Query1.Open;(DBGrid中显示出所有内容)Query1.close;
    Query1.SQL.Clear;
    Query1.SQL.Add(Select * From Table Where CloName like %edit1.text%);
    Query1.open;(DBGrid中显示模糊查询内容)一个思路,自己参考参考。
      

  3.   

    放置datasource1
    然后datasource1.dataset:=query1;
    dbgird1.datasource:=datasource1;procedure form1.onbuttonclick;
    begin
    with query1 do
    begin
    sql.text:='select * where field=''[%'+edit1.text+'%]''';
    oprn;
    end;
    end;
    给分吧:)
      

  4.   

    就用table也可以的,用filter来作模糊查询就可以了。
    如:table1.filtered := false;
        table1.filter := '字段N LIKE '''+edit1.text+'''';
        table1.filtered := true;由于是在内存中进行过滤,速度比query快多了,不信各位试试。