我将Hibernate 3与SQL Server 2008一起使用。我想在Hibernate Criteria中进行区分大小写的搜索。我无法实现。我的代码如下:
Criteria criteria = session.createCriteria(User.class); /*line 1*/ criteria.add(Restrictions.eq("userName", userName)); /*line 2*/
我有一个类 User.java ,其中包含一个String userName。
String userName
数据库条目:
id | user_name -------------- 1 | abc 2 | xyz
现在,如果我"abc"按userName第2行传递,则它应该从db返回第一条记录。但是,如果我通过"Abc","ABC","aBC"等如userName在第2行,没有记录将被取回。
"abc"
userName
"Abc"
"ABC"
"aBC"
我已经访问了此链接,但对我没有帮助,因为我不想将排序规则与hql或SQL Server一起使用。我愿意使用排序规则,Criteria但不知道该怎么做。
Criteria
Criteria criteria = s.createCriteria(User.class); criteria.add( Expression.sql(“userName = ? collate Latin1_General_CS_AS_KS_WS”, userName, new StringType()) );