【分享】mysql 一些边缘值

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

在数据库中,索引的字段设置太长了,导致不支持。【根本原因:5.6+版本的innodb大长度前缀默认是关闭的】。

mysql建立索引时,数据库计算key的长度是累加所有index用到的字段的char长度,在按照下面的比例乘起来

不能超过限定的key长度767:

latin1 = 1 byte = 1 character

uft8 = 3 byte = 1 character

utf8mb4 = 4byte = 1character

gbk = 2 byte = 1 character

解决方案参考:

MySQL5.6建索引时遇到 Specified key was too long; max key length is 767 bytes错误提示解决办法_specified key was too long 767_牛奶咖啡13的博客-CSDN博客

Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535

出错原因:这是由于MySQL要求一个行的定义长度不能超过65535而导致的,具体而言:

(1)单行最大超过65535(这里不包括TEXT、BLOB),则会报此错误;

(2)单个字段如果大于65535,也会报此错误。

mysql新增字段报错:Row size too large. The maximum row size for the used table type, not counting BLOBs, is_8.0 版本数据库 创建字段报错 row size-CSDN博客

posted @   虹梦未来  阅读(6)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示