码迷,mamicode.com
首页 > 数据库 > 详细

MySQL解决:Specified key was too long; max key length is 767 bytes

时间:2020-11-07 15:31:35      阅读:29      评论:0      收藏:0      [点我收藏+]

标签:specified   mys   database   ecif   应该   lte   base   byte   table   

问题产生:

经过查找资料,应该是在给一个varchar(255)类型的字段建立索引的时候,超过了767字节的长度。

解决办法:

可以适当修改字段的长度,修改细节需要根据编码格式来考虑。

如果字段长度为100,编码方式为utf8,那么最大占用300字节,但如果是utf8mb4,则最大占用400字节。

另:数据库的编码格式可以通过以下命令查看:

SHOW VARIABLES LIKE ‘character_set_database‘;

可以通过以下命令设置:

ALTER DATABASE `table_name` CHARACTER SET utf8 ;

MySQL解决:Specified key was too long; max key length is 767 bytes

标签:specified   mys   database   ecif   应该   lte   base   byte   table   

原文地址:https://www.cnblogs.com/summerday152/p/13934748.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有
迷上了代码!