字段类型的优先级
整型>date,time>enum(枚举类型)char >varchar >blob,text
time :定长运算快,节省时间,考虑时区,写sql不方便
enum:能约束值的目的,内部用整型来存储,但与char联查时,内部要经历串与值的变化
char:定长,考虑字符集和校对集
varchar:不定长,要考虑字符集的转化与排序时的校对集,速度慢
text,blob:无法使用内存临时表(排序操作只能在磁盘上进行)
注意:date,time的选择可以直接选择时间戳,enum(”男“,”女“)//内部转成数字来存储,多了一个转换的过程,可以使用tinyint代替最好使用tinyint
可以选整型就不选字符串,够用就行不用慷慨,尽量避免使用null
varchar 和 char 的选择
char 的长度固定,处理速度要比varchar快很多,但是相对费存储空间,所以对空间存储要求不大,但在速度上有要求的可以使用char类型,反之可以使用varchar
varchar 最多可以定义65535个字节