Campos de uma tabela do banco de dados

6 respostas
F

Gostaria de saber se existe uma função que me retorne todos os campos de uma tabela especifica!





Obrigado!

6 Respostas

E
Cara,





No ORACLE (SQL Plus) por exemplo, se você rodar o seguinte comando:





desc <nome_da_tabela);





Isso retornará a descrição da tabela (nomes do campos, tipos de dados, etc )





<img src="//https://cdn.jsdelivr.net/gh/twitter/twemoji@14/assets/72x72/s.pnglight_smile.png?v=5" title=":slight_smile:" class="emoji" alt=":slight_smile:">


Evandro
F

cara eu to querendo um função em java que me retorne somente os nome dos campos!

A
  rapaz, o que você precisa


Detalhe,  funciona para o oracle, se precisar para outro banco, manda msg





Abração rapaz!








public HashMap getTableStructure(String tableName) throws Exception {





		HashMap hsTable = new HashMap();





		try {


			String sql = "Select * from " + tableName + " where rownum  <=1";





			Statement stmt = connection.createStatement();


			ResultSet rst = stmt.executeQuery(sql);





			ResultSetMetaData rstMetaData = rst.getMetaData();





			int noOfColumns = rstMetaData.getColumnCount();





			for (int j = 1; j <= noOfColumns; j++)


				hsTable.put(rstMetaData.getColumnName(j), rstMetaData.getColumnTypeName(j));





			rst.close();


			stmt.close();





		} catch (Exception e) {


                  System.out.println("Erro  "+ e);


		}





		return hsTable;


	}
F

obrigado vo testar e posto aqui agora para eu pode ter uma ideia qual é a particularidade do oracle neste codigo?

A

Allém do RowNum que só é aceito pelo oracle, os drivers para outras bancos não implementas em muito dos casos os getMetaData(); …



Principalmente aquele JDBC que a microsoft criou para o SQL Server…hehe, você abre o fonte do código e vê um mundo de métodos não implementados, é de tirar sarro da cara deles mesmo

:-]



F

Tem alguma coisa do genero aí para o MS Access? :-?

Criado 31 de janeiro de 2003
Ultima resposta 1 de mar. de 2003
Respostas 6
Participantes 4