你可以先设置QUERY的DATEBASE属性为你要操作的数据库,然后写入SQL,
1:若你的SQL返回的是数据集的话,query1.active:=true;
2:若你的SQL不返回的数据集的话,query1.execsql;就可以了;推荐你用datebase这个控件作联接。

解决方案 »

  1.   

    设置如下属性:
    with query1 do 
    begin
    database:=
    sql:=//SQL 语句 EX: sql:='select * from tablename 
    //ere itionsentence';
    active:=true;
    end;
    如果是本地数据库用QUERY是可以的,但是C/S的则用ADOQUERY.设置基本一样.
    可以看看DEMO或在CSDN上查询QUERY的...方法多多.
      

  2.   


    Query的sql写入方法:
     with query1 do
         begin
            close;
            sql.clear;
            sql.add('select * from name where name=:name');
            parambyname('name').asstring:=edit1.text;
            open;
         end;
    参数还可以写为:Query1.params[0].asstring:=edit1.text;
    或:            Query1.params.paramvalues['country;capital;city']:=VarArrayOf([Edit1.text,Edit2.text.Edit3.text]);
      

  3.   

    with query1 do
         begin
            close;
            sql.clear;
            sql.add('select * from name where name=:name');
            parambyname('name').asstring:=edit1.text;
            active:=true;
            open;
         end;
      

  4.   

    加DATABASE组件,设置loginprompt为FALSE