问题描述
|
我正在向字段添加公式:
@Formula(value = \"(select count(*) from approvalGroup as a where a.isAccounting=true)\")
但是查询失败,因为Hibernate试图使\'true \'成为我对象上的一个字段。
例外:
[ERROR] UnkNown column \'approvalgr0_.true\' in \'where clause\'
我怎样才能告诉Hibernate这是一个常量值,而不是它需要从实体对象中检索的值?
解决方法
Josh,Hibernate公式用作本机SQL(不是HQL),并且DBMS的SQL方言可能没有true关键字。尝试如下更改代码
@Formula(value = \"(select count(*) from approvalGroup as a where a.isAccounting)\")
还请使用数据库列名称,而不要使用持久实体属性的名称。