我正试图通过hql查询获得一个项目列表。问题是排序是在对象的hashset上完成的(orber by ab.clienti.errindirizzos,其中errindirizzos是类的hashset) Clienti
),当我尝试进行排序时,hibernate返回一个异常
客户端.java:
public class Cliente implements java.io.Serializable {
//declaration var
private Set errIndirizzos = new HashSet(0);`
.....
}
客户端.hbm.xml
<set name="errIndirizzos" inverse="true" >
<key>
<column name="ID_CLIENTE" precision="18" scale="0" />
</key>
<one-to-many class="ErrIndirizzo" />
</set>
其中表err\u indirizzo和cliente具有唯一键 "ID_CLIENTE"
hql查询顺序依据:
order by le.cliente.errIndirizzos
哪里 le
是另一个包含clienti的表
letteracliente.java文件
public class Letteracliente implements java.io.Serializable {
.....
private Cliente cliente
......
}
letteracliente.hbm.xml文件
<one-to-one name="cliente" class="it.allianz.images.bean.postaMassiva.Cliente" constrained="true"></one-to-one>
错误:
org.hibernate.exception.SQLGrammarException: could not execute query using scroll
有什么建议吗?提前谢谢
1条答案
按热度按时间xbp102n01#
尝试改用隐式联接:
使用内部连接也会过滤所有
Letteracliente
没有Cliente
或者ErrIndirizzo
. 如果id
不是你想要的。