MYSQL 区分大小写搜索(使用 hibernate)utf8
我的登录表具有 utf8 字符集和 utf8 排序规则,当我想要检查用户名并检索该特定用户名的其他信息时,hql 查询会为我提供小写和大写相同的结果。 我应该如何处理适用于案例的 HQL 查询 我使用 Mysql 5 和 java hibernarte
这是我的查询:
return queryManager.executeQueryUniqueResult("select b.login from BranchEntity b where b.userName = ?", username);
I have Login Table that have utf8 charset and utf8 collation when I want check user name and retrieve other information for this specific user name the hql query give me the same result with lowercase and uppercase.
what should l do for my HQL query that work case sesitive
I use Mysql 5 and java hibernarte
this is my query:
return queryManager.executeQueryUniqueResult("select b.login from BranchEntity b where b.userName = ?", username);
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
最简单的方法是更改列的定义以使用不区分大小写的排序规则,例如
utf8_bin
。详细信息位于此处
The easiest way is to change your column's definition to use case-insensitive collation like
utf8_bin
.Details are here
添加类
并使用它:
这将使所有查询区分大小写,这更有意义。
Add class
and use it:
this will make all queries case-sensitive that makes much more sence.