char(10) 存储的是字符还是字节?

如题所述

第1个回答  2022-06-14
面试的生涯中,曾经有过这个下面这段问答:

那么 真相是 怎么样的呢 ?
万事不决,手册来help

手册已经明确说明 char 10 表示的是字符。 对于一个char(10)的字符,最大允许存储的字节是30个字节(utf8) 编码 ,那么对于字母类型,在utf8格式下是存储是占一个字节还是三个字节,如果是一个字节 最大能存储到30个字符吗?
我们通过建一张模拟表来测一下:

插入

查询

使用mysql --column-type-info 进入终端查看字段类型占用信息

我们可以看到虽然字母字符10个只占了10个字节,长度最大是30字节,但是最大限制仍旧是以字符来计算的。

对此 《innodb存储引擎》一书有下面这段说明

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网