unit rtest;interfaceuses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, DB, DBTables, Grids, DBGrids,rep, QRCtrls, QuickRpt;type
  TRepMain = class(TForm)
    DBGrid1: TDBGrid;
    Button1: TButton;
    Button2: TButton;
    Edit1: TEdit;
    Query1: TQuery;
    DataSource1: TDataSource;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;var
  RepMain: TRepMain;implementation{$R *.dfm}procedure TRepMain.Button1Click(Sender: TObject);
var s:string;
begin
   s:=edit1.text;
   showmessage(s);
   with query1 do
      begin
         close;
         sql.clear;
         sql.add(s);
         open;
      end;
end;

解决方案 »

  1.   

    Query1.SQL.Text := 'SELECT * FROM Table1 WHERE Field1 LINK ' + QuotedStr('%' + Edit1.Text + '%');
      

  2.   

    QUERY1.CLOSE;
    QUERY1.SQL.CLEAR;
    QUERY1.SQL.ADD('SELECT * FROM TABLENAME WHERE FIELD='''+EDIT1.TEXT+'''';
    QUERY1.OPEN;
    ///////////
    OK运行。
      

  3.   

    可以回答我关于sql的时间查询问题吗?
      

  4.   

    with query1 do
    begin
      Close;
      SQL.Clear;
      SQL.Add('SELECT * FROM yourtable where c_field like ''%'+eidt1.text+'%''');
      Open;
    end;
      dbgrid1.datasource.dataset:=query1;
      

  5.   


    procedure TRepMain.Button1Click(Sender: TObject);
    var s:string;
    begin
      s:='select * from field1 like ' + edit1.text;//edit.text由用户输入 如:%kj%,%kjfads___df%等等,这样是最方便的
      showmessage(s);
      with query1 do
          begin
            close;
            sql.clear;
            sql.add(s);
            open;
          end;
    end;
      

  6.   

    用like 和%来组合Query1.SQL.Text := 'SELECT * FROM Table1 WHERE Field1 LIKe ' +'%'+ Edit1.Text +'%'); 
    %为通配符,可以去掉任意一个,得到三种结果,
    即Edit1.Text 在前,Edit1.Text 在后,Edit1.Text 在任意位置
      

  7.   

    'SELECT * FROM yourtable where c_field like ''%'+eidt1.text+'%'''
    %为通配符,可以去掉任意一个,得到三种结果,
    即Edit1.Text 在前,Edit1.Text 在后,Edit1.Text 在任意位置 
      

  8.   

    query1.close;
    query1.sql.clear;
    query1.sql.add('select * from table where field1>=:n1 and field1<=:n2');
    query1.params[0].asstring:=edit1.text+chr(0);
    query1.params[1].asstring:=edit1.text+chr(255);
    query1.open;
    可显示field1以edit1.text开头的所有记录。
      

  9.   

    with query1 do
    begin
      Close;
      SQL.Clear;
      SQL.Add('SELECT * FROM Table Where Field1 like "%"+Edit1.Text+"%"');
      Open;
    end;
      

  10.   

    我有一个SQL查询的示例 请给我电子邮件,[email protected]
      

  11.   

    我这种方法100%好使,哈哈没问题,快给分! 
    with dm.ADOQuery do 
    begin 
    close; 
    sql.Clear; 
    sql.Add('select * from employee where empname like :empname1'); 
    parameters.ParamValues['empname1']:='%'+trim(Edit1.text)+'%'; 
    open; 
    end;
      

  12.   

    Query.sql.add(select * from tablename where fieldname like %'''+edit.text+'''%');
    Query.Open;