mysql6.0 当varchar(255) 作为主键的时候报错解决思路
mysql6.0 当varchar(255) 作为主键的时候报错

具体如上图 ,这是为什么 ,现在这数据库就这一个表
------解决思路----------------------
主键不允许空吧, 先改成not null试试
------解决思路----------------------
varchar定义的长度的单位是字符。
utf8mb4 字符集下, 一些特殊字符会占用 4 个字节, 你设置长度 255, 则占用字节为 255 * 4 = 1020 byte
而mysql 的主键最大长度貌似不能超过 767 byte
所以需将 s 字段长度 设置成 192 以内的数值。
具体如上图 ,这是为什么 ,现在这数据库就这一个表
------解决思路----------------------
主键不允许空吧, 先改成not null试试
------解决思路----------------------
varchar定义的长度的单位是字符。
utf8mb4 字符集下, 一些特殊字符会占用 4 个字节, 你设置长度 255, 则占用字节为 255 * 4 = 1020 byte
而mysql 的主键最大长度貌似不能超过 767 byte
所以需将 s 字段长度 设置成 192 以内的数值。