MySQL 数据库面试题整理
1、简述char和varchar的区别?
char(20) 定长字符类型
特点:
1、一次性分配20个字符串的存储空间
2、使用空格字符填充剩余空间
优点:
1、定长字符存储,效率较高,比如手机号11位很适合
缺点:
1、变长长度的字符串比较浪费空间的
varchar(20) 变长字符类型
特点:
1、随着使用分配存储空间(每次存储时都要做一个数数,数多少就+1)
优点:
1、相对char来讲更省空间
缺点:
1、在存数据时,效率低一点
2、char和varchar如何选择?
1、定长长度一定选择char类型。
2、对于变长长度
读多写少,尽量使用varchar
insert多,可以酌情使用char类型,或者在业务不繁忙期批量进行录入
或者从存储引擎优化(tokudb)和架构优化出发进行优化(分布式)

浙公网安备 33010602011771号