1、char 的长度是固定不变,而 varchar 的长度是可变的
例如值:abc
类型 char (10),存储值为:abc_______(abc+7 个空格)
类型 varchar (10), 存储值为:abc (自动缩短为 3 个字母的长度,节省存储空间)
2、因为 char 类型长度固定,因此 char 的存取效率比 varchar 要快得多,方便程序的存储与查找。
但是 char 也为此付出的是空间的代价,因为其长度固定,所以会占据多余的空间,可谓是以空间换取时间效率。
而 varchar 则刚好相反,节省空间但存取效率相对较低。
3、存储的容量不同
char 类型最多可存放 255 个字符,并且和编码类型无关
varchar 类型复杂一些:
varchar 的最大长度为 65535 个字节,varchar 可存放的字符数因编码类型不同而异