登录
首页 >  数据库 >  MySQL

MySQL VARCHAR 最大大小是多少?

来源:tutorialspoint

时间:2023-08-30 23:45:33 458浏览 收藏

各位小伙伴们,大家好呀!看看今天我又给各位带来了什么文章?本文标题《MySQL VARCHAR 最大大小是多少?》,很明显是关于数据库的文章哈哈哈,其中内容主要会涉及到等等,如果能帮到你,觉得很不错的话,欢迎各位多多点评和分享!

MySQL版本5.0.3之前能够存储255个字符,但从版本5.0.3开始,能够存储65,535个字符。

MySQL官方文档指出:

MySQL 5.0.3及更高版本中VARCHAR的有效最大长度取决于最大行大小(65,535字节,这是所有列共享的)和所使用的字符集。例如,utf8字符可能每个字符需要最多三个字节,因此使用utf8字符集的VARCHAR列可以声明最大为21,844个字符。

请记住,最大行大小的限制是65,535字节。这意味着包括所有列在内,总大小不应超过65,535字节。

让我们看看如果违反这个限制会发生什么:

这是一个包含两列的表,“one”是长度为32,765的varchar,“two”是长度为32,766的varchar。

长度= 32765 + 2 + 32766 + 2 = 65535。

CREATE TABLE IF NOT EXISTS `mytable` (
`one` varchar(32765) NOT NULL,
`two` varchar(32766) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

现在让我们增加列长度 -

CREATE TABLE IF NOT EXISTS `mytable` (
`one` varchar(32767) NOT NULL,
`two` varchar(32770) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

上面给出了以下错误 -

#1118 - Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs

以上内容本身表明 -

The maximum row size is 65,535 bytes. If it exceeds, an error will be visible.

本篇关于《MySQL VARCHAR 最大大小是多少?》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于数据库的相关知识,请关注golang学习网公众号!

声明:本文转载于:tutorialspoint 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>