MySQL查询不区分大小写的问题
2014-12-25 11:21
330 查看
参考:1. MySQL查询不区分大小写的问题
2. MySQL数据表中内容大小写区分的设置
问题描述:
要在我的表User中插入一条name='HELLO' 的记录,先去查询有木有这样的记录,结果查询出来一条name='hello'的记录,于是插入name='HELLO' 的记录失败。
通过查找资料可知,MySQL默认查询是不区分大小写的,可以通过binary关键字加以解决。
解决方法有两种:
第一种:让mysql查询时区分大小写
select * from User where binary name= 'HELLO';
第二种:在建表时加以标识
create table table_name {
id varchar(32) binary;
}
对于现在已经建好的表,可以修改表结构:
alter table User change name name varchar(10) binary;
在mysql中,存在大小写问题的地方还有:
1. 关键字不区分大小写 SELECT * FROM User; 与select * from User;是等价的。
2. 表名不区分大小写: 默认表名不区分大小写的,若想开启表名区分大小写操作如下:
可以修改my.ini或者my.cnf
[mysqld]
lower_case_table_names=1
(0:区分;1:不区分)
然后重启MYSQL服务。
mysql> show variables like '%case_table%';
+------------------------+-------+
| Variable_name | Value |
+------------------------+-------+
| lower_case_table_names | 1 |
+------------------------+-------+
1 row in set (0.00 sec)
参考2. MySQL数据表中内容大小写区分的设置 的说法有误,所开启lower_case_table_names就会查询也区分大小写是不对的。
2. MySQL数据表中内容大小写区分的设置
问题描述:
要在我的表User中插入一条name='HELLO' 的记录,先去查询有木有这样的记录,结果查询出来一条name='hello'的记录,于是插入name='HELLO' 的记录失败。
通过查找资料可知,MySQL默认查询是不区分大小写的,可以通过binary关键字加以解决。
解决方法有两种:
第一种:让mysql查询时区分大小写
select * from User where binary name= 'HELLO';
第二种:在建表时加以标识
create table table_name {
id varchar(32) binary;
}
对于现在已经建好的表,可以修改表结构:
alter table User change name name varchar(10) binary;
在mysql中,存在大小写问题的地方还有:
1. 关键字不区分大小写 SELECT * FROM User; 与select * from User;是等价的。
2. 表名不区分大小写: 默认表名不区分大小写的,若想开启表名区分大小写操作如下:
可以修改my.ini或者my.cnf
[mysqld]
lower_case_table_names=1
(0:区分;1:不区分)
然后重启MYSQL服务。
mysql> show variables like '%case_table%';
+------------------------+-------+
| Variable_name | Value |
+------------------------+-------+
| lower_case_table_names | 1 |
+------------------------+-------+
1 row in set (0.00 sec)
参考2. MySQL数据表中内容大小写区分的设置 的说法有误,所开启lower_case_table_names就会查询也区分大小写是不对的。
相关文章推荐
- MySQL查询不区分大小写问题
- mysql查询不区分大小写问题
- mysql查询不区分大小写问题分析和解决
- MySQL查询不区分大小写问题
- MySQL查询不区分大小写问题
- MySQL查询不区分大小写问题
- MySQL查询不区分大小写问题
- mysql查询字符串数据区分大小写问题
- MySql主键不区分大小写问题、查询不区分大小写问题
- MySql解决不区分大小写和中文模糊查询问题
- MySQL查询不区分大小写问题
- MySQL查询不区分大小写问题
- mysql 查询条件不区分大小写问题
- 使MySQL查询区分大小写[转]
- 处理mysql不区分字母大小写的问题
- mysql查询区分大小写
- 如何让mysql查询区分大小写
- 让PHP查询mysql时不区分大小写
- mysql数据查询大小写敏感问题
- sql 查询 区分大小写问题