我有2个表Property和Rent我想从两个表中获取公共记录。我已经尝试了下面的代码,但我收到了错误。我想知道我做了什么错。
这是我的疑问:
@Query(value="SELECT * FROM Property INNER JOIN Rent ON Property.Property_id=:Rent.propertyid",nativeQuery=true)
public List<Property> ghgh();
我得到的错误:
org.hibernate.QueryException:并非所有命名参数都已设置: [Rent.propertyid] [SELECT * FROM Property INNER JOIN Rent ON Property.Property_id =:Rent.propertyid]
答案 0 :(得分:1)
冒号(SELECT p FROM Property p WHERE p.name = :name
)标记一个命名参数,例如:
:name
在这种情况下,:Rent.propertyid
是一个命名参数,必须提供该参数才能使查询正常工作。
您在查询中使用@Query(value="SELECT * FROM Property INNER JOIN Rent ON Property.Property_id=Rent.propertyid", nativeQuery=true)
,这就是为什么Hibernate会抛出异常,说该命名参数不存在(您的方法没有任何参数)。
你不应该离开结肠吗?
byte[]