参数上的 JPA lower() 函数

问题描述 投票:0回答:1

我已将项目从 spring 3.2 更新到 4.1,将 hibernate 4.2 更新到 4.3.7,并遇到了有趣的问题。 我有疑问:

function parameter: String email;
getQuery(getSelect() + "where lower(o.email) = lower(:email)").setParameter("email", email);

现在,在得到结果后我得到了

org.postgresql.util.PSQLException:错误:函数 lower(bytea) 确实 不存在提示:没有函数与给定的名称和参数匹配 类型。您可能需要添加显式类型转换。

但是如果我打电话

getQuery(getSelect() + "where lower(o.email) = lower('test')")

getQuery(getSelect() + "where lower(o.email) = lower(:email)").setParameter("email", "test")

效果很好。

hibernate postgresql jpa named-parameters
1个回答
0
投票

setParameter("email", email, StringType.INSTANCE) - 解决了我的问题,感谢您的帮助!

© www.soinside.com 2019 - 2024. All rights reserved.