mysql建立表的唯一索引问题,提示我长度太长,但是按栏位计算并没有,怎么回事?
栏位设计如下:
建立uniq索引如下:
提示错误如下:
但是uniq key的各个字段加起来是11 + 150 + 150 + 255 + 10 = 576bytes,并没有达到767啊。。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
字节数跟长度和字符集有关
比如你utf8字符集varchar(255)每个字符占用3个字节就765字节了
gbk占两个字节
其实
int(11)
只有4byte
而
varchar(150)
代表可以存储150
个字符,你用UTF-8
,全存中文的话3*150=450+2=452
个字节;选择合适的数据类型以及数据长度创建表字段