Sql JPA/Hibernate,查询时间戳列忽略条件的时间部分

Sql JPA/Hibernate,查询时间戳列忽略条件的时间部分,sql,oracle,hibernate,date,jpa,Sql,Oracle,Hibernate,Date,Jpa,我使用JPA/Hibernate组合将实体存储到oracle数据库中 该表包含一个时间戳(6)列,用于存储带有时间和毫秒的日期值 存储和加载实体按预期工作。实体中java.util.Date字段的“时间”部分处理正确 但是,当我使用本机查询和where time

我使用JPA/Hibernate组合将实体存储到oracle数据库中

该表包含一个
时间戳(6)
列,用于存储带有时间和毫秒的日期值

存储和加载实体按预期工作。实体中java.util.Date字段的“时间”部分处理正确

但是,当我使用本机查询和
where time<:startTime
条件查询表时,startTime只包含日期“2014年7月30日”。“时间”部分被截断

休眠查询看起来像:

select documentta0_.id as id1_14_, documentta0_.id_document as id5_14_, documentta0_.host as host2_14_, documentta0_.task as task3_14_, documentta0_.time as time4_14_ 
from document_task documentta0_ 
where documentta0_.task='preview' 
and documentta0_.host='my.host.uk' 
and documentta0_.time>'30-Jul-14' 
order by documentta0_.time ASC
orm.xml文件包含以下列定义:

<basic name="time" optional="false">
     <column name="time"/>
     <temporal>TIMESTAMP</temporal>
</basic>

时间戳

如何查询日期和时间?

可能只是格式问题。如果您正在使用p6spy之类的东西,请尝试取消注释并将属性设置为

databaseDialectDateFormat=dd-MM-yy HH:mm:ss.SSSSSS

是的,是我的故障,我更改了设置,现在输出正确