1

我有 Eclipse 的问题,我有这个使用 createQuery 可以正常工作的查询,但是当我将所有“createQuery”转换为命名查询时,我收到了这个错误: 在此处输入图像描述

我写这个的代码部分:

(c.contaNumero || c.contaNumeroDigito)

是连接两个字段并将此连接与用户输入相匹配。

正如我所说,这是一个正确的查询,我只是认为 eclipse 或 JBoss 工具显示了不正确的错误消息......我该如何解决这个问题?

- - - -编辑 - - - -

我刚刚找到了答案,我把它贴在这里,但我只能在从今天起 2 天后接受它(WTF?)。

4

3 回答 3

0

正如“Ashish”所说,hibernate 只允许使用像“||”这样的运算符,但它不在 JPQL 语法上。所以我刚刚发现使用 JPQL 连接它的函数是 CONTATENATE(feld1, field2),如果有人和我有同样的问题。

于 2014-04-01T13:48:37.740 回答
0

|| 在 JPQL 中没有运算符。将其替换为 OR:http ://docs.oracle.com/cd/E11035_01/kodo41/full/html/ejb3_langref.html#ejb3_langref_operators

于 2014-04-01T12:49:19.657 回答
0

为什么你有错误:

正如雷先生所说,他||不是操作员,JPQL因此您必须将其替换为“或”

为什么你能够运行是与会话:

这里提到的休眠允许use arithmetic operators, concatenation, and recognized SQL functions in the select clause:

于 2014-04-01T13:15:50.660 回答