Como mostrar todos dados em um ResultSet

Pessoal, como faco para exibir todas colunas de um result set.
Sei que posso utilizar por exemplo rs.getString(“campo”), mas nesse caso seleciono campo a campo.
Mas como fazer para exibi-las de uma vez só no prompt de comando?
Semelhante ao que o mysql faz quando fazemos um select * from…
Vlw.

Você pode contar o número de colunas desse ResultSet, usando o método getMetaData(), que lhe retorna um objeto do tipo ResultSetMetaData.

Ele pode lhe dar:

  • O número de colunas (getColumnCount());
  • O nome de cada coluna (getColumnName());
  • O tipo de cada coluna (getColumnType());
    e outras informações.

A sua consulta está rodando normal?

// se houver registros, entra no while e verifica a cada iteração se existem mais linhas while ( seuResultSet.next() ) { System.out.println( rs.getString( "nomeDoCampo" ) ); }

Falow!

Desculpa pelo fora… vc ta falando de colunas… err…
Faz como o thingol falou, usa o ResultSetMetaData…

Acho que isso pode te ajudar :wink:


while (resultSet.next()) {

 for (int i = 1; i <= numberOfColumns; i++) {

 System.out.print(resultSet.getObject(i));

 System.out.print("/"); }

 System.out.println();

}


Ao usar a API JDBC, vc deve ter um conhecimento sobre a estrutura do banco de dados que vc estará usando!! Mas se vc quer trabalhar de forma mais genérica, vc deve olhar a documentação da interface java.sql.ResultSetMetaData. Esta interface possui métodos que retornam a quantidade de colunas existentes no ResultSet, os nomes dessas colunas, tipo e outras coisas mais!! Para obter uma instância de ResultSetMetaData, vc deve possuir uma instância de ResultSet e chamar o método getMetaData() a partir dela!!

Espero ter ajudado!!
Flw aew e t+!!

Bom cara… num sei se vai ajuda muito mais tenta isso aqui

o rst no código é um ResultSet.

while ( rst.next() ) { //enquanto tem um proximo registro for (int i =0 : rst.getMetaData().getColumnCount()-1) { //de zero até o numero de colunas System.out.print(rst.getString(i)); // escreve todas as colunas do registro corrente } }

tem tambem o “rst.getArray(i)” dai nem precisa do while, me parece q ele retorna um array com todos os dados da coluna!

espero ter ajudado!

Não, ele retorna um java.sql.Array se a coluna for do tipo ARRAY (existem alguns bancos de dados que têm esse tipo.)

ok, valew ai… essa eu tb não sabia!

Valeu galera. Todas as dicas extremamente uteis.