当前位置: 首页 > 知识库问答 >
问题:

Hibernate-意外令牌:lower

乜清野
2023-03-14

我必须获得我的数据库(PostgreSQL)中的所有注册表,并使用不带大小写的。我试过使用标准,但ignoreCase()对我不起作用(我使用的是Hibernate3.6)。

criteria.add(Restrictions.eq(TABLECODEID, tableCodeID).ignoreCase());

我也尝试过使用ilike方法,但仍然不起作用。

criteria.add(Restrictions.ilike(TABLECODEID, tableCodeID));

这个版本也是:

criteria.add(Restrictions.ilike(TABLECODEID, tableCodeID, MatchMode.ANYWHERE));

因此,当我尝试在Hibernate中使用HQL创建查询时,会出现以下错误:

unexpected token: lower near line 1, column 81

我的代码如下所示:

StringBuffer queryString = new StringBuffer()
                    .append("from ListItem li ")
                    .append("where lower(li.tableCodeId) like :tableCodeId");

Query query = session.createQuery(queryString.toString());
query.setParameter("tableCodeId", tableCodeID.toLowerCase());

List<ListItem> listItemListAux = query.list();

我做错了什么?

共有1个答案

束建章
2023-03-14

您应该以这种方式进行解析,matchmode.anywhere将会起作用:

criteria.add(Restrictions.ilike(TABLECODEID, tableCodeID, MatchMode.ANYWHERE));
 类似资料:
  • 我目前正在用spring boot、hibernate和QueryDSL开发一个数据仓库。几乎一切都很好,但是我在执行一个名为的实体的搜索请求时遇到了麻烦。这些错误并没有真正的帮助: 我的请求很简单 为了使这一点更容易理解,我的代码如下所示。我对我的大多数实体都有同样的方法,而且效果很好。因为我不知道可能来自哪里,所以我查看了生成的类,在那里我发现了代码的平静。名称让我很好奇,但我不确定它是否与错

  • 问题内容: 为什么每次我做时:- 它只是解析很好,但是当我这样做时:- 它给我一个错误,说:- 问题答案: 您要它解析JSON文本(不是)。那是无效的JSON,字符串必须用双引号引起来。 如果要与第一个示例等效:

  • 本文向大家介绍意外的令牌相关面试题,主要包含被问及意外的令牌时的应答技巧和注意事项,需要的朋友参考一下 您的JavaScript表示使用JSONP模式发出Ajax请求(这涉及将元素插入文档中而不是使用XMLHttpRequest)。 您得到的响应是一个XML文档,而不是遵循JSONP模式的JavaScript程序,它类似于: 因为浏览器试图将XML作为JavaScript执行(不是),您会收到错误

  • My HQL: 我收到以下错误: 我是HQL的新手。我想通过代码动态设置间隔值。我设置了等于比较的参数值。我读过http://www.mkyong.com/hibernate/hibernate-parameter-binding-examples/post,但我不知道在没有其他符号的情况下如何设置timeOffSet值。 斯纳克斯。 编辑: 我试过?及其工作良好,但我想用来实现这一点。

  • 我在使用Struts2和Hibernate时遇到了以下错误: 我有这个方法: folling代码定义类之间的关系: Contrat类: Paiement类: PeriodePay等级: 此查询在phpMyAdmin中工作良好;你能告诉我出了什么问题吗 编辑1: 我在试着别搞错了: 我在控制台中得到结果: 但是使用jsp我在数据表中得不到结果,也许我必须修复迭代器

  • 问题内容: 我有一个查询,我正在联接两个表ROuteMaster和RouteHalts。当我执行内部联接时 我搜索了该网站,发现了类似的问题及其答案。提到的问题是 我在RouteHalts中为RouteMaster进行了多对一映射,在RouteHalts中为RouteMaster定义了getter和setter方法 但仍然出现相同的错误。可以请一个人来指导我。 映射文件 公共类RouteMaste