Avaliação do Usuário

Estrela inativaEstrela inativaEstrela inativaEstrela inativaEstrela inativa
 

Vamos passo-a-passo:

 

Crie um novo projeto de Aplicação Java:

 

 

Adicione nas Bibliotecas o conector MySQL para JAVA que pode ser baixado de http://dev.mysql.com/downloads/connector/j/. Clique com o botão da direita sobre Bibliotecas e selecione Adicionar JAR/Pasta:

 

 

Selecione o conector do local onde você o gravou e clique no botão Abrir:

 

 

Você terá:

 

 

Agora vamos realizar a conexão com o banco de dados com os seguintes comandos:

 

{code}

Connection com = null;

try {

Class.forName("com.mysql.jdbc.Driver");

con = (Connection) DriverManager.getConnection("jdbc:mysql://local/banco", "usuario", "senha");

System.err.println("Conectado!");

} catch (ClassNotFoundException | SQLException e) {

System.err.println("Erro de conexão:\n" + e);

}

{/code}

 

Apenas lembre-se de trocar local pelo endereço do seu banco de dados (endereço IP) e banco pelo nome do banco de dados que deseja se conectar.

 

Faça o mesmo para usuário, colocando o nome do usuário para seu banco de dados e senha, colocando a senha para o usuário do seu banco de dados MySQL.

 

Execute para ver se está tudo OK. Você deverá ter:

 

 

Agora para retornar os campos de uma determinada tabela primeiro faça uma consulta qualquer a ela:

 

{code}

ResultSet rs = null;

PreparedStatement stmt;

String consulta = "select * from tabela";

try {

stmt = (PreparedStatement) con.prepareStatement(consulta);

rs = stmt.executeQuery();

} catch (SQLException ex) {

Logger.getLogger(Retorna_campos.class.getName()).log(Level.SEVERE, null, ex);

}

{/code}

 

Troque tabela da variável consulta pelo nome da tabela do seu banco de dados que deseja obter os nomes das colunas, o resultado dessa consulta pouco importa para o objetivo final que desejamos.

 

Agora para retornar os nomes das colunas da tabela:

 

{code}

try {

ResultSetMetaData rsMetaData = (ResultSetMetaData) rs.getMetaData();

for(int i=1;i<=rsMetaData.getColumnCount();i++) {

System.out.println(rsMetaData.getColumnName(i));

}

} catch (SQLException ex) {

Logger.getLogger(Retorna_campos.class.getName()).log(Level.SEVERE, null, ex);

}

{/code}

 

Note que os nomes das colunas são obtidos através do MetaData do banco de dados conectado e da tabela selecionada, portanto para ter acesso a eles basta usar o método getMetaData() do próprio ResultSet. A quantidade de colunas é obtido através do método getColumnCount() e o nome da coluna através do método getColumnName(i), onde i é o número da coluna, iniciado em zero.

 

Executando você deverá ter: