基础数据类型
整形
TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT
作用:存储年龄,等级,id,各种号码等
整形的宽度是显示限制,不够时用0填充,超出是显示最大限制
浮点型
FLOAT、DOUBLE、DECIMAL
作用:存储薪资、身高、温度、体重、体质参数等
float:
float(m,d)
单精度浮点数(非准确小数值),m是整数部分+小数部分的 总个数,d是小数点后个数。m最大值为255,d最大值为30
double:
double(m,d)
双精度浮点数(非准确小数值),m是整数部分+小数部分的总个数,d是小数点后个数。m最大值也为255,d最大值也为30
decimal:精度高,但是整数位数少
decimal(m[,d])
准确的小数值,m是整数部分+小数部分的总个数(负号不算),d是小数点后个数。 m最大值为65,d最大值为30。比float和double的整数个数少,但是小数位数都是30位
日期类型
DATE、TIME、DATETIME 、IMESTAMP、YEAR
YEAR
YYYY(范围:1901/2155)2018
DATE
YYYY-MM-DD(范围:1000-01-01/9999-12-31)例:2018-01-01
TIME
HH:MM:SS(范围:’-838:59:59’/‘838:59:59’)例:12:09:32
DATETIME
YYYY-MM-DD HH:MM:SS(范围:1000-01-01 00:00:00/9999-12-31
23:59:59Y)
TIMESTAMP
YYYYMMDD HHMMSS(范围:1970-01-01 00:00:00/2037 年某时)
DATETIME的日期范围是1001——9999年,TIMESTAMP的时间范围是1970——2038年。
字符串型
char、varchar
char:定长,简单粗暴,浪费空间,存取速度快,范围0-255(字节)
varchar:变长,精准,节省空间,存取速度慢,范围0-65535(字节)
其他字符串类型:BINARY、VARBINARY、BLOB、TEXT
枚举类型
enum:在给定的值中选一个
create table 表名(enum('值1','值2','...'))
集合类型
set:在给定的值中选多个
create table 表名(col set('值1','值2','...'))
insert into 表名 values('值1,值2,...')