1、能够根据用户选择一个数据库
2、把该数据库里的所有表里显示出来

解决方案 »

  1.   

    在SQL Server中,获得所有数据库的列表用:
    存储过程:sp_databases获取当前数据库的可用表可以用:
    sp_tables也可以执行SQL 语句
    select name from sysobjects where type='U' order by name
      

  2.   

    sqlserver
    1. select a.name username,b.name databasename from   master.dbo.sysxlogins a,master.dbo.sysdatabases b where a.dbid=b.dbid
    2. select * from dbo.sysobjects where type='U'
      

  3.   

    我想在一个列表里面显示出来,比如listbox中显示,怎么才能把数据库名显示出来
    还有数据库中所有的表显示出来
      

  4.   

    1,首先用ADOQuery连接上你的数据库master;
    2,其中master有个表,名字是 sysdatabases;
    3,用AQOQuery1去查询就可以了
      

  5.   

    这里,你就可以看见所有的数据库了
    记住:ADOQuery1的connectionstring要连接到master!!
    ------------------------------------------------------
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      with adoquery1 do
      begin
        sql.Clear;
        sql.Add('select * from sysdatabases');
        open;
        while not eof do
        begin
          showmessage(Fieldbyname('name').AsString);
          next;
        end;
      end;
    end;
      

  6.   

    如果要一并全部显示就这样:
    -----------------------------------
    procedure TForm1.Button2Click(Sender: TObject);
    var
      a:string;
    begin
      with adoquery1 do
      begin
        sql.Clear;
        sql.Add('select * from sysdatabases');
        open;
        while not eof do
        begin
          a :=a+Fieldbyname('name').AsString+'//';{这里把所有数据库合并成字符串了}
          next;
        end;
        showmessage(a);
      end;
    end;
      

  7.   


    ADOConnection1.active:=true;
    ADOConnection1.GetTableNames(listbox1.Items);什么都不要了