MySQL char和varchar的区别
2020-02-05 本文已影响0人
代码的搬运工
char的特点
(1)char表示定长字符串,长度是固定的。
(2)如果插入数据的长度小于char的固定长度时,则用空格填充。
(3)因为长度固定,所以存取速度要比varchar快很多,甚至能快50%,但正因为其长度固定,所以会占据多余的空间,是空间换时间的做法。
(4)对于char来说,最多能存放的字符个数为255,和编码无关。
varchar的特点
(1)varchar表示可变长字符串,长度是可变的。
(2)插入的数据是多长,就按照多长来存储。
(3)varchar在存取方面与char相反,它存取慢,因为长度不固定,但正因如此,不占据多余的空间,是时间换空间的做法。
(4)对于varchar来说,最多能存放的字符个数为65532。
总之,结合性能角度(char更快)和节省磁盘空间角度(varchar更小),具体情况还需具体来设计数据库才是妥当的做法。
转自:https://www.cnblogs.com/LittleMike/p/11553087.html