这还不简单在程序里这样写
procedure tform1.buttomclick(sender:tobject);
begin
 with adoquery1 do   //这段代码
 begin
 active:=false;
 Sql.clear;
 SQL.add('select * from table1');
 active:=True;
 end;
end;

解决方案 »

  1.   

    加一个按钮,然后在按钮的onclick中加入以下代码:
    adoquery1.close;
    adoquery1.sql.clear;
    adoquery1.sql.add('select * from table2');
    adoquery1.open;
      

  2.   

    a:='table1';
    adoquery1.sql.add ('select * from '+a);
      

  3.   

    通过界面改变,可以在你想改变的事件里加入
    adoquery1.close;
    adoquery1.sql.clear;
    adoquery1.sql.add('select * from table2');
    adoquery1.open; 
      

  4.   

    adoquery1.close;
    adoquery1.sql.clear;
    adoquery1.sql.add('select * from :table);
    adoquery1.Parameters['table'].Value := combox1.text;
    adoquery1.open;
      

  5.   

    在你想改变的事件里加入
    adoquery1.close;
    adoquery1.sql.clear;
    adoquery1.sql.add('select * from table2');
    adoquery1.open;
      

  6.   

    你可以用动态查询的方式!你也可以另加一个按钮,将table2的query查询语句写进即可!
    象上边snakeguo(枫) 这位仁兄所说!如此以来,你按第一个按钮将显示由table1中查出的记录。按另外一个按钮,将显示table2中查询的记录!
      

  7.   

    querystr :='select * from %s';
    query1.close;
    Query1.sql.clear;
    Query1.sql.add(format(Querystr,[edit1.text]);//edit1.text为你输入表名
    query.open;
      

  8.   

    我同意以上人员的作法,CELERONLL用到了函数,也不错。
      

  9.   

    adoquery1.close;
    adoquery1.sql.clear;
    adoquery1.sql.add('select * from :table);
    adoquery1.Parameters['table'].Value := edit1.text;
    adoquery1.open;
    显示出错
    [Error] Unit1.pas(36): Incompatible types: 'Integer' and 'String'
    是什么原因
      

  10.   

    var
    TableName:String;
    tableName:='table1';
    With AdoQuery1 do
    Begin
       Close;
       Sql.clear;
       Sql.Add('Select * from '+tablename);
       Prepared;
       Open;
    end;
    或者作一个过程,通过参数去赋值!