Erro Ao retornar campo time para um jtable

2 respostas
M

Tudo bom pessoal?
Sou novo aqui no fórum, já pesquisei mas não encontrei solução para o meu problema.

Estou populando um jtable pelo result set, mas quando chega no campo time do MySQL ele da o seguinte erro:

“java.sql.SQLException: java.sql.SQLException: Illegal hour value ‘81’ for java.sql.Time type in value '81:36:21.”

Pela minha pesquisa descobri que o problema é que o java.sql.time só aceita até 24 horas por que é do tipo “time of day”.

Os campos menores que 00:00:00 exibem corretamente.

Local do código onde acontece o erro:

modelo.addRow(new Object [] {rs.getTime("Permanencia")});

ja tentei também com getString e getLong, o getLong conseguiu retornar apenas as horas sem os minutos e seguntos.

Existe alguma forma de contornar esse problema?

Obrigado.

2 Respostas

S

Cara
Para contornar isso que vc fez vc pode por ex. no oracle fazer um TO_CHAR nesse time e dar um getString no resultSet
Ja no MySql vc pode usar a funcao DATE_FORMAT para isso
Vide
http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_date-format

M

Sagatiba:
Cara
Para contornar isso que vc fez vc pode por ex. no oracle fazer um TO_CHAR nesse time e dar um getString no resultSet
Ja no MySql vc pode usar a funcao DATE_FORMAT para isso
Vide
http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_date-format

Perfeito!!!

Muito Obrigado Sagatiba!

Criado 3 de fevereiro de 2009
Ultima resposta 3 de fev. de 2009
Respostas 2
Participantes 2