请教一下pgSQL中的hibernate中的模糊查询
Hibernate的支持模糊查询,基本用法是 name like '%王%'。但是我现在是希望把"王"用参数代替,上网看了一下,发现了这样的写法,
就是name like '%':truename. 如此写的话,:truename是参数。
这样写我在mySQL中调试是可以的(generator class="increment"),但是用到postgreSQL中就不行了(generator class="sequence",其他一切都不变). 出现了无法执行查询的异常.
想请教一下.这是数据库的问题,generator class 的问题,还是我这种模糊查询写法的问题. 如果是我的模糊查询的写法的问题的话,是否还有其他的写法.谢谢^_^
问题点数:0、回复次数:5Top
1 楼ecaol(大家先别冲动,此事还须从长计议。)回复于 2004-09-03 16:49:32 得分 0
UPTop
2 楼zhouxiaobai(xiaobai)回复于 2004-09-03 18:51:23 得分 0
up too ^_^
补充一下:主要是想讨论下hibernate的模糊查询,不限于pgsql数据库,
希望大侠指教.Top
3 楼zhouxiaobai(xiaobai)回复于 2004-09-04 01:24:52 得分 0
问题解决了,这样写就可以了^_^
Query q = s.createQuery("from Cat as c where c.name like :tag");
q.setParameter("tag","%王%");
个人认为之前的写法对pgSQL不行应该是数据库的问题.Top
4 楼delphi2java(delphi2java)回复于 2004-09-04 01:42:08 得分 0
like '%王%' 这种写法将会导致索引失效,反应速度会巨慢的。
Top
5 楼zhouxiaobai(xiaobai)回复于 2004-09-04 11:46:43 得分 0
请问是不是只要用到了模糊查询就会使索引失效,速度变慢呢?Top




