
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字节。
让我们看看如果违反这个限制会发生什么:
mc_shop B2C商城是一款优秀的网上商城系统网店系统网购系统,适合中小企业开通网上商城系统网店系统购物系统,在淘宝,阿里巴巴创造创造上市融资神话、京东创造中国最大的渠道商、百度,腾讯纷纷进军电子商务的大潮下,麦拷林上市掀起了新一轮b2c网上商城投资热潮,本系统致力于协助众多中小企业进军网上商城网上购物电子商务领域。mc_shop b2c网上商城系统、购物系统、网店系统 开源易用,免费商业使用
0
这是一个包含两列的表,“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 最大大小是多少?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号