Ao pesquisar em um campo timestamp utilizando o criteria, a query não retorna nenhum registro caso as datas sejam iguais, ou não exibe os registro da data final.
Ex:
dataI = 01/01/2012.
dataF = 01/01/2012.
c.add(Restrictions.between("insert_data", dataI, dataF));
Isso porque, a query está tentando localizar tudo que estiver entre 01/01/2012 00:00 e 01/01/2012 00:00. Porém, na tabela os registros estão armazenados com os horários (01/01/2012 10:15).
Para resolver esse problema, basta acrescentar um dia a data final.
Ex:
dataF.setDate(dataF.getDate() + 1);
c.add(Restrictions.between("insert_data", dataI, dataF));
Agora, a query irá procurar tudo que estiver entre 01/01/2012 00:00 e 02/01/2012 00:00.
sexta-feira, 9 de novembro de 2012
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário