MySQL 1071 - Specified key was too long; max key length is 1000 bytes解决方案

MySQL 1071 - Specified key was too long; max key length is 1000 bytes解决方案

1071 - Specified key was too long; max key length is 1000 bytes解决方案

在设计数据库表时,主键设计varchar长度为255,点击保存表,数据库报错如下图所示


原因:在UTF-8MB4字符集下,每个字符通常需要4字节来存储。因此,如果你在VARCHAR(255)字段上使用UTF-8MB4字符集,它的最大存储长度将是 255 * 4 = 1020 字节,这已经超过MySQL的默认主键长度限制(1000字节)。

在这种情况下,如果你尝试将VARCHAR(255)列作为主键并使用UTF-8MB4字符集,你可能会遇到 “1071 - Specified key was too long; max key length is 1000 bytes” 的错误,因为它接近或超过了MySQL的主键长度限制。

解决方案:缩短主键的长度,如varchar(200)

转载请说明出处内容投诉
CSS教程_站长资源网 » MySQL 1071 - Specified key was too long; max key length is 1000 bytes解决方案

发表评论

欢迎 访客 发表评论

一个令你着迷的主题!

查看演示 官网购买