MySQL
Char和Varchar的区别
char 定长,适合固定长度;varchar 变长,适合长短不定的字符串。
定长行结构简化了内存读取、计算、页内寻址
char(n):n 代表字符数,最多 255。
- 不管你存的字符串有多短,都会占用 n 个字符的空间,不足的部分用空格填充,读取时自动把末尾空格删掉
varchar(n):n 是最大字符数,MySQL5.0.3+ 最大支持 65535 字节(不是字符)。
占用空间 = 实际字符串长度 + 长度前缀
- 长度 ≤255:前缀 1 字节
- >255:前缀 2 字节
例子:
varchar(10)- 存
'abc'→ 只占用 3 字符 + 1 字节前缀
- 存