如何准确选择用户名和密码注意大写和小写字母 - mysql

问题描述 投票:0回答:1

在这种情况下,我创建了“登录”表:

+--------+--------------+---------+-----+
|ID_LOGIN| USERNAME     | PASSWORD      |
+--------+--------------+---------+-----+
| 1      | admin        | admin         | 
+--------+--------------+---------------+
| 2      | MaxiKIng1991 | #MaxiKIng1991$|
+--------+--------------+---------------+

我要选择所有指定用户名和密码的地方。但我要注意大写和小写字母。所以请看一下。首先我选择了第一次登录(用户名和密码)。

SELECT * FROM `logins` WHERE USERNAME = "AdMin" AND PASSWORD = "AdMin";

当我写这个查询时它显示如下:

+--------+--------------+---------+-----+
|ID_LOGIN| USERNAME     | PASSWORD      |
+--------+--------------+---------+-----+
| 1      | admin        | admin         | 
+--------+--------------+---------------+

但在我看来,它不应该显示结果。我注意到sql查询检查每个列名中有多少个字符串。当我1个字母太多或太少时,什么也没有显示。

在第二个查询案例中:

SELECT * FROM `logins` WHERE USERNAME = "Maxiking1991" AND PASSWORD = "#maxiking1991$";

然后显示以下结果:

+--------+--------------+---------+-----+
|ID_LOGIN| USERNAME     | PASSWORD      |
+--------+--------------+---------+-----+
| 2      |MaxiKIng1991  |#MaxiKIng1991$ | 
+--------+--------------+---------------+

但它也不应该表明这一点。

是否可以在mysql查询中注意值中的小写和大写字母?有任何想法吗?我很难在其上搜索任何解决方案。感谢任何帮助和建议。

mysql select where uppercase lowercase
1个回答
1
投票

像这样使用此大小写敏感查询

select * from logins where BINARY USERNAME='admin';

如果你使用'Admin'而不是'admin'。它将不匹配,它会产生空集。

© www.soinside.com 2019 - 2024. All rights reserved.