Recuperar tipo do atributo

Ola pessoal !!

To querendo saber como posso “pegar” (retornar um String) o tipo de um atributo do banco de dados.

Vlw pessoal

abraco ae

pra que você quer saber o tipo de atributo do banco de dados?

Ola.

Eu irei ler do banco e transformarei em um formato de arquivo chamado ARFF.

para isso preciso saber o tipo do atributo.

abraco

eu não sei se tem como não cara… não será um banco especifico? se for qualquer tipo de banco… acho que você vai ter que trabalhar como se tudo fosse string… sei lá…!!

perguntei a um cara aqui… ele disse que depende do driver de conexão do banco de dados… você vai ter que ter uma ideia de como mapear… tipo… pegar como Object…

viajei aqui…hehehee

:frowning:

fala ae !!

o banco eh Mysql !!

mas eu to querendo saber se pelo resultset dah pra catar alguma informacao do tipo o nome do atributo eu sei q dah !!

mas mesmo assim vlw pela ajuda !!

Abraco

Fala cara!!!

Você pode fazer isso utilizando os meta-dados de uma consulta:

ResultSet                rs    =  statement.executeQuery(query);
ResultSetMetaData  rsmt =  rs.getMetaData();

int colunas = rsmt.getColumnCount();

String tipoColuna;

for (int i=0;i<colunas;i++)
{
        tipoColuna = rsmt.getColumnClassName();
        System.out.println("O tipo da coluna "+ (i+1) +" é: "+tipoColuna);
}

Deve ser mais ou menos isso, eu não testei o código, construí esse exemplo dando uma olhada na API.

Tipo, quando tiver dúvidas sobre se uma funcionalidade existe ou não, arrisca uma olhada na API, muitas vezes a gente re-implementa coisa que já existe de bobeira. Eu mesmo antes de olhar a API pensei em fazer uma série de testes tentando converter os objetos do resultSet para identificar o tipo mais apropriado, ou em pegar um objeto do resultSet e chamar o seu método getClass(). Ou seja, trabalho a toa… =)))

Abraços!