varchar(n)中的n为什么要设的尽量小

WBOY
发布: 2016-06-07 15:54:34
原创
1521 人浏览过

主要原因有两个: 1、MySQL的一个Row的不包含Text和Blob的最大长度是65535。 如:你建一个表,存在这样两个字段:varchar(35000), varchar(48000)是无法创建的。会得到如下提示: 错误代码: 1118 Row size too large. The maximum row size for the used tab

主要原因有两个:
1、MySQL的一个Row的不包含Text和Blob的最大长度是65535。
如:你建一个表,存在这样两个字段:varchar(35000), varchar(48000)是无法创建的。会得到如下提示:
错误代码: 1118
Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs。

2、在进行排序和创建临时表一类的内存操作时,会使用n的长度申请内存。

如:varchar(5)和varchar(100)相比,后者申请的内存近似是前者的20倍。

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!