二者区别:
1.选择char类型时比如设置char(LEN),那么其长度已经固定为LEN,即使输入的数据没有LEN长也会分配LEN个固定长度,
而选择varchar类型时比如设置varchar(LEN),其长度随输入数据的长度而改变,比如LEN=10,输入的数据长度只有5,那么LEN会自动变为5;
2.char类型中英文字符的长度为1,汉字占用长度为2,而varchar类型对于英文与汉字所占用的长度均为2
优先选择:
通过区别我们可以知道,char类型因为其长度固定,所以存储/查找时速度快,但是长度没分配好的话浪费空间,而varchar类型长度随存储数据的长度改变,所以存储/查找时速度较char类型慢,但是不浪费空间,所以当需求高存储查找速率并且对空间资源的浪费与否不是那么看重时当采用char类型,而对于空间资源的分配要求高当采用varchar类型