[英]Syntax error in JPA query
當我執行以下代碼時
return entityManager
.createQuery("select a from Article where a.slug = ?1", Article.class)
.setParameter(1, slug)
.getSingleResult();
我得到以下異常
java.lang.IllegalArgumentException: An exception occurred while creating a query in EntityManager:
Exception Description: Syntax error parsing the query [select a from Article where a.slug = '?1'], line 1, column 22: syntax error at [where].
Internal Exception: MismatchedTokenException(77!=78)
at org.eclipse.persistence.internal.jpa.EntityManagerImpl.createQuery(EntityManagerImpl.java:1328)
我正在使用帶有EclipseLink 2.0.2的JPA 2。
我的查詢有什么問題?
......來自文章a ...(遺漏別名)
好吧,答案已經給出了..但是我不喜歡JPQL,你必須在實體名稱之后放置一個標識符,但如果你的from子句只有一個實體,則是不可能的。 大多數時候,我也忘記了那個不必要的標識符。 我希望我能寫下面的上述查詢;
select * from Article where slug = ?1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.