2011-07-14 187 views
0

我在将所有表格的字符集latin1转换为utf8时遇到问题。最大表格已转换,但有些表格显示将latin1转换为utf8的问题

错误1071(42000):指定的键太长;最大密钥长度为255个字节

这里我的表中我使用主键与3个元素。元素长度分别为128,64,128。有人可以解决这个问题吗?高级谢谢你。

我联合了这个表。从另一个数据库中。基表引擎是MYISAM。

回答

0

MySQL,UTF8字符最多可能需要3字节。

因此,您的PK的最大长度可以是(128 + 64 + 128) * 3 = 960字节,超过引擎允许的255字节。

顺便说一下,你正在使用什么存储引擎? InnoDB允许767字节和MyISAM允许1000字节。