Oracle数据库上的JPA Native查询

时间:2015-06-09 22:19:33

标签: oracle jpa

我正在尝试对Oracle数据库进行本地查询,但是我只是没有得到什么。

我有一个包含多行的表,我知道oid = 1234的记录有最新的updatetimeutc字段,其中up​​datetimeutc是Date字段。所以我做了以下几点:

Query query1 = entityManager.createNativeQuery("select updatetimeutc from TABLE where oid=1234");
List<Object[]> resultList = query1.getResultList();
Object[] os = resultList.get(0);
Date date = os[0];

Query query2 = entityManager.createNativeQuery("select oid, updatetimeutc from TABLE where updatetimeutc > :d");
query.setParameter("d", date);
resultList = query.getResultList();

此时,我期待resultList.size()== 0,但这不是正在发生的事情。我在查询1中得到了返回给我的同一行。

有人可以解释为什么会这样或者我做错了吗?

由于

1 个答案:

答案 0 :(得分:0)

解决方案是确保使用Oracle的JDBC驱动程序版本,该驱动程序为返回DATE字段的本机查询生成java.sql.Timestamp。