永发信息网

hibernate 查询怎么能不区分大小写

答案:2  悬赏:60  手机版
解决时间 2021-03-08 08:15
  • 提问者网友:王者佥
  • 2021-03-08 00:20
hibernate 查询怎么能不区分大小写
最佳答案
  • 五星知识达人网友:时间的尘埃
  • 2021-03-08 01:51
如果是使用HQL,可以使用lower或者upper函数来实现

from User u where lower(u.username)=lower(’Mp3′)

这样就可以查出来mp3,mP3等用户了!

如果使用Criteria,首先使用Restrictions创建Criterion

如果是字符串相等匹配Restrictions.eq(’username’,'mp3′).ignoreCase()

如果是字符串模糊匹配Restrictions.ilike(’username’,'mp3′)或者Restrictions.like(’username’,'mp3′).ignoreCase()
全部回答
  • 1楼网友:酒者煙囻
  • 2021-03-08 03:29
create table "risk"."fe_field_input"  (      "id"                 integer                         not null,      "inputname"               varchar2(100),      "inputcode"           varchar2(100),      constraint pk_fe_field_input primary key ("id")   );注意看,字段名是加了引号的,查看一下创建后的表,在数据库中显示确实是小写的。  所以会报上面的异常,hibernate会自动将字段名改成大写。 oracle是不区分大小写的,会自动转换成大写。 create table risk.fe_field_input  (      id                 integer                         not null,      inputname               varchar2(100),      inputcode           varchar2(100),      constraint pk_fe_field_input primary key ("id")   );
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯