MySQL唯一键是否区分大小写

这篇文章主要讲解了“MySQL唯一键是否区分大小写”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL唯一键是否区分大小写”吧!

创建一个学生表student,包含id和name两个字段,id设为自增,name设为唯一;

添加一个学生Tom,添加成功,可以查询到;

再添加一个学生,名字设为tom,添加失败,提示:tom在student.name键中重复了;

既然说tom已存在,那使用tom作为条件查询了一下,是可以查询到的,结果中的字段值是Tom。

由此看来mysql在字段比较的时候未区分大小写,应该是统一了大小写后再做的比较。

实验SQL

mysql> CREATE TABLE `student` (
    -> `id` int(11) NOT NULL AUTO_INCREMENT,
    -> `name` varchar(255) DEFAULT NULL COMMENT '名字',
    -> PRIMARY KEY (`id`),
    -> UNIQUE KEY `name` (`name`)
    -> ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='学生表';
Query OK, 0 rows affected, 2 warnings (0.01 sec)

mysql> insert into student (name) values('Tom');
Query OK, 1 row affected (0.00 sec)

mysql> select * from student;
+----+------+
| id | name |
+----+------+
|  1 | Tom  |
+----+------+
1 row in set (0.00 sec)

mysql> insert into student (name) values('tom');
ERROR 1062 (23000): Duplicate entry 'tom' for key 'student.name'
mysql> select * from student where name='tom';
+----+------+
| id | name |
+----+------+
|  1 | Tom  |
+----+------+
1 row in set (0.00 sec)

感谢各位的阅读,以上就是“MySQL唯一键是否区分大小写”的内容了,经过本文的学习后,相信大家对MySQL唯一键是否区分大小写这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!