mysql数据库字符集限制主键长度的问题记录

Specified key was too long; max key length is 767 bytes

ps:今天在公司环境下写了个demo,在oracle数据库中没有任何问题,回家后,尝试在本机mysql建立数据库时,居然建表失败。

搜索了下原因:是因为主键,varchar长度超过255时,主键默认建立索引时失败引起:

在不同的字符集下:

latin1 = 1 byte = 1 character 
uft8 = 3 byte = 1 character 
gbk = 2 byte = 1 character

当尝试减少id的长度,减少至255时,建立表成功(uft8字符集)


你可能感兴趣的:(mysql)