如何在mysql中使字段区分大小写

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在mysql中使字段区分大小写相关的知识,希望对你有一定的参考价值。

我想用一个字段来保存密码,并且是区分大小写的密码。那么怎么选择它的字段?好像有一个整理是区分大小写的但是不是英语。怎么才能实现呢?

select * from abc whre id="a" 与
select * from abc whre id="A" 查询出的结果是不同的
对单个字段设置的方式就不用说了,希望得到是对mysql默认的设置或是对整个库的设置

是否区分大小写和校对规则有关,默认设的规则是大小写不敏感的。
show create table如果看到collate是ci结尾,那么就是不区别的,如果cs或bin结尾,就是区别的。
如果建表的时候选择的是区别大小写的规则而查询的时候又暂时不想区别,
可以用类似
WHERE column_name COLLATE latin1_general_ci = 'xxx'
的写法改变查询使用的校对规则
参考技术A

mysql中(区别于sqlserver)如果是查询需要区分大小写,推荐使用这种:

使用binary关键字 -> select * from 表 where binary 字段 = 'abc';

也可以在建表或建表后修改字段设置,以使其区分大小写:

1、CREATE TABLE m_user(userName VARCHAR(10) BINARY)

2、ALTER TABLE m_user MODIFY COLUMN userName VARCHAR(10) BINARY

以上是关于如何在mysql中使字段区分大小写的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Microsoft Active Directory 中使 LDAP 用户 ID 区分大小写

如何让mysql的表名/字段名/字段值区分大小写

如何查看mysql表名字段是不是区分大小写

如何在 oracle sql 数据库中使 WHERE 子句不区分大小写?

如何设置MySQL中表的大小写区分

试图在 Flask-SQLAlchemy 中使查询不区分大小写 [重复]