一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

mysql查询区分大小sql语句小结

时间:2013-11-26 编辑:简简单单 来源:一聚教程网


公司网站有需求对用户名验证要验证大小写。其实刚开始他注册的时候就就都是大小写,所以没有必要做大小写验证了。但是现在要登陆的验证大小写,那在注册的时候也要对此进行验证。

但是MySQL在查询字符串时是大小写不敏感的,在编绎MySQL时一般以ISO-8859字符集作为默认的字符集,这个字符集对大小写不敏感,因此在比较过程中中文编码字符大小写转换造成了这种现象

后来找到一个利用binary临时解决办法

 代码如下 复制代码

SELECT * FROM  ·表名·WHERE binary `user`=’www.111com.net’

主要关键字binary 有它你就可以区分大小写了。

 代码如下 复制代码

create  table  表名 ( name varchar (20) binary  );

如果哪些字段需要区分大小写在在设计表的就可以这样写。

解决办法二,如果你可以修改my.ini配置可以如下解决大小写问题

A.表名区分大小写

 在my.conf加入:

ower_case_table_names = 0

其中 0:区分大小写,1:不区分大小写
 

B.插入查询时区分大小写

 
字段值需要设置BINARY属性,即可区分大小写。

 设置的方法有多种:

创建时设置:

 代码如下 复制代码

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

使用alter修改:

 代码如下 复制代码
ALTER TABLE `tablename` MODIFY COLUMN `cloname` VARCHAR(45) BINARY;

mysql table editor中直接勾选BINARY项

热门栏目