char和varchar:
CHAR:定长字符串,char(4)不管是存入几个字符,都将占用4个字节,若存入字符数小于n,则以空格补于其后,查询之时再将空格去掉,所以char类型存储的字符串末尾不能有空格
VARCHAR:变长字符串,varchar是存入的实际字符数+1个字节,varchar(4),存入3个字符将占用4个字节
char类型的字符串检索速度要比varchar类型的快。
varchar和text:
varchar可指定n,内部存储varchar是存入的实际字符数+1个字节。
text不能指定n,text是实际字符数+2个字节。
varchar查询速度快于text,在都创建索引的情况下,text的索引似乎不起作用。