赞
踩
类型 | 大小 | 用途 | 备注 |
char | 0-255字节 | 定长字符串 | |
varchar | 0-65 535字节 | 变长字符串 | utf8字符,最大长度=21842 = (65535-1-2-4)/3 |
tinyblob | 0-255字节 | 二进制形式的短文本数据 | |
tinytext | 0-255字节 | 短文本数据 | |
blob | 0-65 535字节 | 二进制形式的长文本数据 | |
text | 0-65 535字节 | 长文本数据 | |
mediumblob | 0-16 777 215字节 | 二进制形式的中等长度文本数据 | |
mediumtext | 0-16 777 215字节 | 中等长度文本数据 | |
longblob | 0-4 294 967 295字节 | 二进制形式的极大文本数据 | |
longtext | 0-4 294 967 295字节 | 极大文本数据 |
varchar(21842):
21842 = (65535-1-2-4)/3
MySQL要求一个行的定义长度不能超过65535(包括多个字段),所以有65535.
varchar的最大有效长度取决于最大行大小.
减1的原因是实际行的存储从第2个字节开始.
减2的原因是varchar头部的2个字节表示长度.
减4的原因是字段id的int类型占用4个字节.
除以3的原因是一个utf8字符占用3个字节.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。