Teria como eu entrar com uma url do servidor bd sem especificar o bd q estarei usando, tipo: host:usario:senha sem o bd.
Com isso eu poderia executar o comando SHOW DATABASES;?? eu executaria como um executeQuery e ficaria gravado em um resultSet???
O SHOW TABLES também se executa com o executeQuery??
Show databases
5 Respostas
Olá,
já faz algum tempo que não uso SQL direto mas, lembro de ter feito algo como isto usando a classe ResultsetMetaData.
Dá uma olhadinha ai:
http://java.sun.com/j2se/1.4.2/docs/api/java/sql/ResultSetMetaData.html
Teria como eu entrar com uma url do servidor bd sem especificar o bd q estarei usando, tipo: host:usario:senha sem o bd.
Não tem como… pois vc não estaria seguindo a sintaxe do url especificado para o BD…
O que vc pode fazer é se conectar em um banco… com o objeto da conexão (Connection) vc utiliza o método getMetaData().getCatalogs(), que irá te retornar um ResultSet com todos os bancos desta conexão. Use o método getString(1) que irá te retornar o nome do banco, ai é só fazer um iterator para retornar todos os bancos… blz?
O comando "SHOW TABLES " pode ser executado com o executeQuery sim… 
quando ao comando “SHOW DATABASES” nunca descobri como executa-lo através de Java mas bem q gostaria de encontrar um jeito de fazer isso … :???:
A classe ResultSetMetaData apenas nos da acesso aos dados da tabela em que executamos uma query nao aos banco existentes.
O comando "SHOW TABLES " pode ser executado com o executeQuery sim…![]()
quando ao comando “SHOW DATABASES” nunca descobri como executa-lo através de Java mas bem q gostaria de encontrar um jeito de fazer isso … :???:
A classe ResultSetMetaData apenas nos da acesso aos dados da tabela em que executamos uma query nao aos banco existentes.
Agora com o DatabaseMetaData que é retorna pelo método getMetaData() da conexão com o banco tem como…
quando ao comando “SHOW DATABASES” nunca descobri como executa-lo através de Java mas bem q gostaria de encontrar um jeito de fazer isso … :???:
.
Fui pesquisar e achei…
suaConexao.createStatement().executeQuery("SHOW DATABASES");
Te retorna um ResultSet com os bancos… para adquirir o bancos é só fazer como eu disse no pirmeiro post… acesse com o método next() cada posição do ResultSet e usa o método getString(1), que te retornará o nome do banco… é isso ae…