您的位置:首页 > 数据库 > MySQL

windows系统下mysql查询语句区分大小写的设置。

2016-02-23 21:03 585 查看
以前也有用过mysql,但今天意外的发现了一个问题,mysql在windows系统是不区分大小写的,这样当你查询密码时是不分大小写。而在unix和linux系统下的mysql是区分的,具体是什么原因我也不太清楚,遇到问题解决一下就可以了。

打开百度一搜说让在my.ini的[mysqld]下加一句lower_case_table_names = 0,然后重启服务器。我是win8.1的系统,修改之后无法打开服务器,报错:1067

又在网上搜到将0改为2,可重启,但依然不区分大小写。

解决方法:

解决方法也是在网上搜到的,给列添加BINARY属性如下:

1.这是创建表之后修改列的属性

ALTER TABLE `tablename` MODIFY COLUMN `cloname` VARCHAR(45) BINARY;


tablename处输入要修改列的表名,cloname就是要修改的列名了,主要重点在于BINAR这个关键字。

2.创建表时

CREATE TABLE T(
A VARCHAR(10) BINARY
);


如果你使用的是Navict就更方便了,如下图:



表的设计中列的排序规则修改为如图,这样该列在查询时就区分大小写了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: