1.char长度固定而varchar长度不固定
2.char(n) 若存入字符数小于n,则以空格补于其后,查询之时再将空格去掉。所以char类型存储的字符串末尾不能有空格,varchar不限于此。
3.char(n) 固定长度,char(4)不管是存入几个字符,都将占用4个字节,varchar是存入的实际字符数+1个字节(n<=255)或2个字节(n>255),所以varchar(4),存入3个字符将占用4个字节。4.char类型的字符串检索速度要比varchar类型的快。因为char长度固定,可以更快的存储查询,但是同时也出现了浪费空间的问题,可以说是为了时间效率浪费了空间效率。