1、字符型:char(num)与varchar(num)
思考:char与varchar有什么区别?
区别1:定长和变长
char固定长度,例如定义char(8),则这一列中存储的内容长度都为8,不足8则会用空格补充(但是在查询的时候不会带空格的,Mysql会对此进行处理)
区别2:存储方式
char直接存储字符内容
varchar开头由1-2个字节存储该字符的长度,后面接着存储字符内容。
总结:char的存储速度快,但是由于是定长,会浪费不少空间资源;varchar则不会,它根据实际长度存储,但由于存储的特殊形式造成存储速度不及char快。
更倾向char,就是所谓的空间换时间。
2、整型:int能满足日常绝大部分的整数存储,不需要指定字符长度
浮点型
float(m,n)单精度
Double(m,n)双精度
decimal(m,n)小数值
注:m代表总长度,n小数长度,float(5,3)代表小数位数为3,整数位数为2,长度为5。例:34.123
三者区别:
1.四舍五入
2.使用默认位数
总结:Double 更精确,但日常float就够用,decimal实际存储的是字符串。
3、日期型
date日期;datetime日期时间
4、枚举型
Enum单选,例:性别
set多选:爱好