Ean*_*n V 6 java sql-server hibernate
我的班级映射如下:
@Entity
public class Order {
private String formulatedProp;
@Formula(value="(SELECT ',' + coalesce(a.description,a.code)
FROM another_table a
WHERE a.order_id=id FOR XML PATH(''))")
public String getFormulatedProp() {
return formulatedProp;
}
}
Run Code Online (Sandbox Code Playgroud)
该公式的 SQL 查询在单独执行时效果很好。但是当 Hibernate 生成查询来获取订单时,它会将表的别名附加到FOR
和XML
单词上。所以它尝试执行类似的查询
SELECT ',' + coalesce(a.description,a.code)
FROM another_table a
WHERE a.order_id=order0_.id order0_.FOR order0_.XML PATH('')
Run Code Online (Sandbox Code Playgroud)
这显然是错误的。我怎样才能做到这一点?
环境:Hibernate 3.6、SQL-Server 2008
PS 我知道自定义方言可以是一个解决方案,但我不想朝这个方向发展。
归档时间: |
|
查看次数: |
3067 次 |
最近记录: |