Timestamp e HQL como devo converter?

2 respostas
smorigo

Boa noite pessoal estou tentando converter um String da seguinte maneira:

SimpleDateFormat sdf = new SimpleDateFormat(“yyyy/MM/dd”);
hql += " and CAST(data_emissao AS DATE) &gt= ‘" + sdf.format(this.getDataInicial()).toString() + "’ ";

mas no momento em que tento executar a pesquisa ele está me dando erro de conversão, alguem sabe o que devo fazer ?
Uso o bd Firebird.

2 Respostas

javaBeats

O erro de conversão é no CAST() ou no format()?

De qualquer maneira, sugiro que use um named parameter:

String hql = "from Objeto where data between :inicio and : fim";
query.setParameter("inicio", inicio, TemporalType.DATE);
query.setParameter("fim", fim, TemporalType.DATE);

Rodrigo

PS: Xii… isso é para Hibernate e Persistence API do EJB3… não sei se é o que você está usando, mas deve haver algo parecido nas outras versões também.

Lich_King

por q o toString() se o format já retorna uma String?

Criado 10 de agosto de 2006
Ultima resposta 8 de abr. de 2007
Respostas 2
Participantes 3