1 整数类型
1.1 数值类型
类型 大小 范围 (有符号) 范围(无符号) 说明
TINYINYY 1字节 -128 ~ 127 0~255 微小整数
SMALLINT 2字节 -32768 ~ 32767 0~65535 小整数
MEDIUMINT 3字节 -2^23 ~ 2^23-1 0~2^24-1 中整数
INT 4字节 -2^31 ~ 2^31-1 0~2^32-1 大整数
BIGINT 8字节 -2^63 ~ 2^63-1 0~2^64-1 极大整数
1.2浮点型(带小数点的)
FLOAT 4字节 单精度浮点数
DOUBLE 8字节 双精度浮点数
mysql> create table t9(
-> name varchar(10),
-> pay float(7,2) #(7,2)总位宽7位包括整数位和小数点后的和,小数点后保留2位
-> );
2 字符类型
char 定长 (0-255)
varchar 变长 (0-65535)
text 大文本类型
blob 二进制对象
3 日期时间类型
year 年 yyyy 2017
date 日期 yyyymmdd 2017-05-22
time 时间 hhmmss 21:35:16
datetime 日期时间 yyyymmddhhmmss
mysql> create table t15(
-> name varchar(30),
-> start_day year,
-> birthday date,
-> up_class time,
-> meeting datetime
-> );
Query OK, 0 rows affected (0.04 sec)
mysql> insert into t15
-> values
-> (“gao”,1982,20170219,090000,20170623083000);
mysql> select * from t15;
±-----±----------±-----------±---------±--------------------+
| name | start_day | birthday | up_class | meeting |
±-----±----------±-----------±---------±--------------------+
| gao | 1982 | 2017-02-19 | 09:00:00 | 2017-06-23 08:30:00 |
4 枚举类型 (字段的值只能在列举的范围内选举)
enum(“值1”,“值2”,“值n”) 选择列举范围内的一个
set (“值1”,“值2”,“值n”) 选择列举范围内的一个或多个
mysql> create table t5(
-> name varchar(20),
-> sex enum(“boy”,“girl”,“no”) not null default “boy”,
-> love set(“girl”,“game”,“book”)
-> );