MySQL数据类型
常用数据类型:int、decimal、varchar
整型类型
应用场景:保存人的年龄(1-100): tinyint; 保存个人状态值(0,1): tinyint
浮点型
float: 单精度型,只保证6位有效数字的准确性
double: 双精度型,16位有效数字
decimal: 定点数。其中decimal(5, 2)代表5位数字,其中2位是小数。
字符串
常用的char,varchar, text。
- char: 定长字符串。创建表时,长度已经固定。比如name char(10),代表name字段占用10个字符空间
- varchar: 变长字符串,占用硬盘空间依据内容决定。name varchar(10),代表name字段最多占用10个字符空间
- text: 与前两者不同的是,text不可以有默认值,其长度最大
。
选择原则:
- varchar: 适用于经常变化的字段
- char: 知道固定长度的字符串, 最大长度为255
- 尽量用varchar
- 超过255只能用varchar或text,能用varchar不用text
枚举类型
在定义字段时就预定了字段值的范围,值是固定可选。
gender enum('男', '女')
时间类型
- datetime保存时间范围:’100-01-01 00:00:00’ 到 ‘9999-12-31 23:59:59’
- timestamp保存时间范围:’1970-01-01 00:00:01’ 到 ‘2038-01-19 03:14:07’