MySql在Linux下,数据库名、表名、列名、别名大小写规则是这样的:
1. 数据库名和表名是严格区分大小写的
2. 表的别名严格区分小大写
3. 列名与列的别名在所有情况下均是忽略小大写的
4. 变量名也是严格区分大小写的
MySql在windows下都不区分大小写
但是,可以给字段值设置BINARY属性来区分字段值的大小写,设置方法有以下两种:
1. 创建表的时候设置,比如说有一个用户表m_user ,要给用户名设置区分大小写(这里用户名用英文哈)
CREATE TABLE m_user(userName VARCHAR(10) BINARY)
2. 如果表已经创建好了,使用alter修改
ALTER TABLE m_user MODIFY COLUMN userName VARCHAR(10) BINARY
最近实现一功能时,需要这样处理,搜索了下找到了解决办法,感谢网友的分享
摘自:点击打开链接
//2017-03-27 近期在巩固mysql基础知识点的时候,发现如果只是查询需要区分大小写的话,其实没必要去这样(如上方式)修改字段,直接查询的时候加上binary关键字就行,例如:按照用户名查询用户信息
select * from m_user where binary userName="admin"