2013-03-26 59 views
0

我有两个实体:语法错误与执行一个查询到一个

  1. User有两个字段的实体有:id(@id),username
  2. Profile有两个字段的实体有:user( @ OneToOne,targetEntity = “用户”),fullname

但是,当我做一个查询从东西尝试我读了书JPA:

SELECT p from Profile p where p.user.username = 'john'

它提醒我一个消息:

[Syntax Error] line 0, col 55: Error: Expected =, <, <=, <>, >, >=, !=, got '.'

回答

0

由于目前EBNF的,你所使用的语法是在教义2 ORM无效。您必须加入以下相关实体:

SELECT 
    p 
FROM 
    Profile p 
JOIN 
    p.user u 
WHERE 
    u.username = :username