mysql 大小写敏感的一个解决方案
来源:互联网 发布:mac抹掉磁盘格式选哪个 编辑:程序博客网 时间:2024/05/16 04:51
今天,有同事告诉我,我们游戏登陆的时候,账号和密码没有区分大小写,后来又发现创建账号和角色也没有区分大小写。思考登陆流程之后,应该是Mysql没有区分大小写敏感的问题。
在网上查了一下资料,Mysql支持大小写敏感的解决方案。发现了几种方案。
第一、修改数据库的设置,让Mysql支持大小写敏感,这个方案太激进了,数据库数据太多,这样改保不准会出什么问题。
第二、修改表结构和字符集,和第一种方案差不多,但是风险小一点。
第三、修改存储过程或者SQL语句,好处是不动数据库结构,缺点是涉及到的地方都的改。
权衡之后,还是选了第三种方案,只修改登录和创建的2个存储过程。
体方法是,使用mysql的binary关键字。
BINARY不是函数,是类型转换运算符,它用来强制它后面的字符串为一个二进制字符串,可以理解为在字符串比较的时候区分大小写。
测试如下:
mysql> select binary 'ABCD'='abcd' ret1, 'ABCD'='abcd' ret2;
+--------+--------+
| ret1 | ret2 |
+--------+--------+
| 0 | 1 |
+--------+--------+
1 row in set (0.00 sec)
1 0
- mysql 大小写敏感的一个解决方案
- Mysql大小写敏感的问题
- MySQL的大小写敏感问题
- Mysql大小写敏感的问题
- Mysql大小写敏感的问题
- MYSQL大小写敏感的问题
- Mysql大小写敏感的问题
- mysql大小写敏感的问题
- 2015061105 - Mysql大小写敏感的问题
- 解决mysql大小写敏感的问题
- MySQL大小写不敏感的解决方法
- mysql大小写敏感问题
- MySQL 大小写敏感
- Mysql大小写敏感
- Mysql大小写敏感
- Mysql修改大小写敏感
- 配置MySQL大小写敏感
- mysql大小写敏感说明
- Java中常用的加密方法(JDK)
- socket linux c tcp
- 安装与svn1.7相兼容的flex Eclipse中的SVN(subclipse)
- jquery的$.extend和$.fn.extend作用及区别
- VirtualBox 扩展虚拟硬盘容量
- mysql 大小写敏感的一个解决方案
- MFC的使用技巧(如何彻底删除一个类)
- USB无线网卡的Linux驱动移植
- MYSQL彻底删除
- 微信分享失败总结
- android自定义进度条渐变色View,不使用任何图片资源
- ( standard c libraries translation )fgetgrent
- http消息体和响应体
- Java内存分配原理精讲