Função para tetorna os nomes das tabelas de um banco

Bom dia amigos,

Eu gostaria de saber como faço para pegar o nome de todas as tabelas de um banco, eu tentei usar o getTables da classe DatabaseMetaData, mas não entendi os parâmetros que ele pede e ele me retorna um resultset e não o nomes de todas as tabelas existentes no banco. Alguém pode me indicar uma forma de conseguir essa informação?

Desde Já agradeço

Logan

Uai, mas o ResultSet contém os nomes das tabelas, conforme solicitado :stuck_out_tongue:

E o Google ainda continua seu amigo. Dê uma olhada em:

http://publib.boulder.ibm.com/infocenter/iadthelp/v6r0/index.jsp?topic=/com.ibm.etools.iseries.toolbox.doc/jdbcdbmd.htm

Não serviria utilizar, a partir do objeto ResultSet, o método [color=blue]getMetaData() [/color], que retorna um objeto [color=blue]ResultSetMetaData() [/color]?

Amigos,

Eujá havia encontrado a descrição do método na dacumentação do java, contudo eu não entendi esses parâmentros que teriamque passar eu montei assim

con = DriverManager.getConnection(url, usuario, senha);
            System.out.println("Conectou");
            rs = con.getMetaData().getTables(null, null, "", null);

e nada é retornado tentei fazer um rs.next mas ele me retorna false, tenho certeza que estou usando parametros incorretos na chamada do método, só não sei quais seriam certos

Qual o banco de dados que voce esta usando?

Em Oracle, eu não conheço o conceito de catalog, mas existe o conceito de schema. Acho que um dos dois voce teria que passar, dependendo do banco de dados. Quanto ao pattern eu não tenho a minima ideia se é para usar regexp, padrão do banco de dados, ou outro padrão. Acho que depende do driver JDBC.

eu trabalho tanto com o Mysql como com o Access, na verdade nunca ouvi falar em catalog, e esquema só quando vc acessa o banco via runtime do netBeans