Seu Curso

  • Full Screen
  • Wide Screen
  • Narrow Screen
  • Increase font size
  • Default font size
  • Decrease font size

Como obter o nome das colunas de uma tabela MySQL usando JAVA + NetBeans

Imprimir
Avaliação do Usuário: / 98
PiorMelhor 

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:

 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);
 }

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:

 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);
 }

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:

 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);
 }

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:

 

Adicionar comentário


Código de segurança
Atualizar

You are here: