mysql查询所有的大小写_学习mysql的大小写敏感查询

linux下默认mysql查询,where后面的条件是不去分大小写的。

如果想要mysql查询时varchar字段大小写敏感,定义列时要加上binary。

例如:

复制代码 代码如下:

CREATE TABLE T1(

NAME VARCHAR(10) BINARY

);

或查询时加上binary,例如:

复制代码 代码如下:

SELECT * FROM T1 WHERE A=BINARY ''ABC'';

详见:http://www.jbxue.com/article/4681.html 有关Mysql的大小写敏感性。

mysql查询时,默认情况下是忽略对where条件里面的空格的。

如表A里面,name字段确实有zhangsan这个值,那么

复制代码 代码如下:

select * from A where name='zhangsan';

select * from A where name='zhangsan   ';(张三后面有一个或者多个空格)

这两个语句都能查的到。

网上查了查,原因好像是:官方文档上说是MySQL校对规则属于PADSPACE,对CHAR和VARCHAR值进行比较都忽略尾部空格,和服务器配置以及MySQL版本都没关系

mysql更改表的列属性:

复制代码 代码如下:

alter table status modify *** varchar(255) binary default null ;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值