我想知道MySQL VARCHAR类型的最大大小是多少。
我读到最大大小受行大小限制,大约65k。我尝试将字段设置为,varchar(20000)但是它说太大了。
我可以将其设置为varchar(10000)。我可以将其设置为多少?
请记住,MySQL具有最大行大小限制
MySQL表的内部表示形式的最大行大小限制为65,535字节,不包括BLOB和TEXT类型。BLOB和TEXT列仅对行大小限制贡献9到12个字节,因为它们的内容与行的其余部分分开存储。阅读有关表列数和行大小限制的更多信息。
单列可占用的最大大小,在MySQL 5.0.3之前和之后是不同的
VARCHAR列中的值是可变长度的字符串。在MySQL 5.0.3之前,长度可以指定为0到255之间的值,而在5.0.3和更高版本中,长度可以指定为0到65535之间的值。在MySQL 5.0.3及更高版本中,VARCHAR的有效最大长度取决于最大行大小(65,535字节,在所有列之间共享)和所使用的字符集。
但是,请注意,如果使用多字节字符集(如utf8或utf8mb4),则该限制会降低。
使用TEXT类型以克服行大小限制。
四种TEXT类型是TINYTEXT,TEXT,MEDIUMTEXT和LONGTEXT。这些对应于四种BLOB类型,并且具有相同的最大长度和存储要求。
有关BLOB和TEXT类型的更多详细信息
MySQLv8.0的参考https://dev.mysql.com/doc/refman/8.0/en/blob.html 参考MySQLv5.7 http://dev.mysql.com/doc/refman/5.7/en/blob.html 参考MySQLv5.6 http://dev.mysql.com/doc/refman/5.6/en/blob.html 参考MySQLv5.5 http://dev.mysql.com/doc/refman/5.5/en/blob.html MySQLv5.1的参考http://dev.mysql.com/doc/refman/5.1/en/blob.html MySQLv5.0的参考http://dev.mysql.com/doc/refman/5.0/en/blob.html 更
查看有关“ 数据类型存储要求”的更多详细信息,该信息处理所有数据类型的存储要求。来源:stack overflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。