5
我想知道如何在Hibernate查詢語言中使用日期文字。我在我的JPA項目(如Eclipselink的提供者)中做了如下工作,它工作。休眠日期文字
SELECT m FROM Me m WHERE m.dob <= {d '1984-10-06'}
但是當我改變休眠(V 3.6.7)作爲供應商對我的JPA項目,這是行不通的。
我想知道如何在Hibernate查詢語言中使用日期文字。我在我的JPA項目(如Eclipselink的提供者)中做了如下工作,它工作。休眠日期文字
SELECT m FROM Me m WHERE m.dob <= {d '1984-10-06'}
但是當我改變休眠(V 3.6.7)作爲供應商對我的JPA項目,這是行不通的。
的reference documentation表示:在所使用的
表達式where子句包括以下內容:
[...]
- SQL文字 '富',69,6.66E + 2, '1970-01-01 10:00:01.0'
使用日期文字'yyyy-mm-dd'適用於我(但這是一種非標準的方式) – siva636
你報什麼有有效JPA語法(見JPA2規範第4.6.1節 - 「JDBC轉義SY ntax「)。如果Hibernate不支持它,那麼它就是Hibernate中的一個bug,應該像那樣提出來。 – DataNucleus
@DataNucleus我同意你的意見。根據Hibernate支持JPA的承諾,他們必須支持這種語法。但Hibernate似乎支持日期字面量爲'yyyy-mm-dd'而不是{d'yyyy-mm-dd'} – siva636
我們在項目中使用Hibernate ** V3.6.8 **,並且此有效的JPA語法不會'不工作。 – Stephan