MySQL禁止大小写敏感(mysql设置不区分大小写)

MySQL是现今大家熟知的数据库管理系统,它支持大小写敏感,但有时也可能需要开发者将大小写敏感性禁用。对一些应用来说,如果某个列具有大小写敏感的属性,那么 and WHERE(条件)中的数据查询就会受此影响,从而导致查询不正确。因此,MySQL禁止大小写敏感是有必要的。

要禁止MySQL的大小写敏感,需要定义MySQL的“编码”(collation),确保编码变量是”utf8_general_ci”,并设置MySQL服务器一致地散列密码和查询语句:

--建立新数据库
CREATE DATABASE db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

--让改动起效
SET NAMES utf8;
SET CHARACTER SET utf8;

--在查询中定义编码
SELECT * FROM db_name ORDER BY field_name COLLATE utf8_general_ci;

此外,还可以使用MySQL Workbench解决此问题。在MySQL Workbench中,选择“模型”选项卡,右键单击你想禁止大小写敏感的内容,并选择“属性”,将编码设置为“utf8_general_ci”。更改该属性后,点击“应用”应用更改,提交更改到MySQL Server中。

最后,通过sql语句,还可以在已有表中禁止大小写敏感:

ALTER TABLE  COLLATE utf8_general_ci;

MySQL的大小写敏感可以通过上述三种方式进行禁止,从定义MySQL的“编码”,使用MySQL Workbench以及MySQL Sql语句都可以禁止大小写敏感,不过要特别注意,一旦禁止,所有未保存的列都会变更,请预留好时间备份数据,以防数据丢失。


数据运维技术 » MySQL禁止大小写敏感(mysql设置不区分大小写)