select * from person where name=:Tfield

解决方案 »

  1.   

    除了ADOquery还可以用Tquery控件。
    var
    query1:Tquery;
    cx:string;
    begin
      query1:=Tquery.create(self);
      cx:='select * from person where ';
      cx:=cx+format('name:=''%s''',[edit1.text]);
      query1.sql.add(cx);
      query1.execsql;
    end;
      

  2.   

    象xiedp那样直接生成SQL语句是可以的,另外你也可以SQL设置参数,参数见面用":"标识,然后通过访问Params属性可以设置参数,举个例子:(你看看TQuery的帮助,你会明白的)var
        Query2:TQuery;
        sSQL:String;
    begin
        Query2.SQL.Clear();
        sSQL:=“INSERT INTO COUNTRY (NAME, CAPITAL, POPULATION) “+
              ”VALUES (:Name, :Capital, :Population)”;  //三个参数,前面加":"标识    Query2.SQL.Add(sSQL);
        Query2.ParamsByName("Name").AsString          := "Lichtenstein";  //填入参数
        Query2.ParamsByName("Capital").AsString       := "Vaduz";
        Query2.ParamsByName("Population").AsInteger   := 420000;    Query2.ExecSQL();
    end;
    大概是这样吧,应为好几个月没有用过DELPHI,所以一些写法已经忘记了,但方法没错,建议你看看TQuery的帮助吧
    另外DELPHI中字符串是应该用双引号还是单引号,我也忘了。