假如A表有字段demo1数据为"abCDeFg";
当查询参数 demo1 = "abCD";
比如 HQL: from A where cloumn1 like '%+demo1+%';//这样就能查到 但是,当demo1 = "ABc"时候,也要能够查询得到数据。请问这该怎么办啊?也就是不区分大小写,都要能够查得到
当查询参数 demo1 = "abCD";
比如 HQL: from A where cloumn1 like '%+demo1+%';//这样就能查到 但是,当demo1 = "ABc"时候,也要能够查询得到数据。请问这该怎么办啊?也就是不区分大小写,都要能够查得到
解决方案 »
- 比较两个对象数组中的内容是否一样?
- 新手求指教,怎么返回集合,怎么去调用!
- 2个字节转成short
- 求教 怎样学好java bean
- 以前都是做BS结构,现在做非BS结构的东西,单独写一个连接数据库的类,那么JDBC的JAR包应该放在什么地方呢
- 关于按引用调用的问题
- 为什么我操作完数据库会提示这个信息10:00:29,448 WARN [SessionImpl] afterTransactionCompletion() was never called
- 送分问题,快来啊
- jikes编译的类如何反编译,急!!!
- SCJP的模拟题
- java.lang.UnsatisfiedLinkError错误
- java的内存分配
你这样写是不规范,也是不安全的,应该通过参数的形式给赋予条件我认为应该:
from A where cloumn1 like ?
或者 from A where cloumn1 like :varQuery setParameter(int position, Object val, Type type) 你再试下
解决办法:
1. 同时转换成大写或小写:from A where upper/lower(cloumn1) like %'+ABC/abc+'%';
2.使用正则表达式.
oracle数据库?用upper或者lower转化
是数据库的格式使用upper或lower函数转化就可以了