我使用Hibernate 3与SQL Server 2008中区分大小写的搜索我想要做的Hibernate的标准区分大小写的搜索。我无法实现它。我的代码如下:Hibernate的标准
Criteria criteria = session.createCriteria(User.class); /*line 1*/
criteria.add(Restrictions.eq("userName", userName)); /*line 2*/
我有一个类User.java含有String userName
。
DB条目:
id | user_name
--------------
1 | abc
2 | xyz
现在,如果我在第2行通过为userName
,那么就应该从数据库返回的第一条记录。但是,如果我通过"Abc"
,"ABC"
,"aBC"
等,在第2行userName
,没有记录将被取回。
我访问过该link但我不希望使用排序规则与HQL或与SQL Server这不是对我很有帮助。我打算使用Criteria
整理,但不知道如何去做。
Expression.sql已弃用。改用: 'Session session = HibernateUtil.getSession(); Criteria criteria = session.createCriteria(User.class); criteria.add(Restrictions.sqlRestriction( “user_name =?collate Latin1_General_CS_AS”,userName, new StringType())); user =(User)criteria.uniqueResult();' 请注意在sqlRestriction中,列名必须是数据库表中的原始列名(与HQL不同) – Thero