CHAR与VARCHAR区别:(都是用来存储字符串的)
保存和检索的方式不同。
char属于固定长度的字符类型,而VARCHAR属于可变长的字符类型。(时间和空间的问题)
(在严格模式,超过列长度的值不会被保存,并且会出现错误提示。(后面介绍什么是严格模式))
区别:
1、检索时从char列删除尾部的空格。
2、char固定长度,处理速度比varchar快得多,缺点是浪费存储空间,程序需要在尾部空格进行处理。(空间问题)
3、不同的存储引擎使用原则不同。
MyISAM:建议使用固定长度的数据列代替可变长度的数据列
MEMORY:目前都是使用固定长度的数据行存储。无论是char还是varchar最后都被当成是CHAR类型。
Innodb:建议使用Varchar。