数据类型
1、简介
MySQL支持多种类型,大致可以分为四类:数值、日期/时间、字符串(字符)类型和二进制类型。
2、数值类型
类型 |
大小 |
范围(有符号) |
范围(无符号) |
用途 |
tinyint |
1字节 |
-128~127 |
0~255 |
很小的整数 |
smallint |
2字节 |
-32768~32767 |
0~65535 |
小的整数 |
mediumint |
3字节 |
-8388608~8388607 |
0~16777215 |
中等大小的整数 |
int |
4字节 |
-2147483648~2147483647 |
0~4294967295 |
普通大小的整数 |
bigint |
8字节 |
- 2^63~2^63-1 |
0~2^64 – 1 |
大整数 |
float |
4字节 |
|
|
单精度浮点数 |
double |
8字节 |
|
|
双精度浮点数 |
decimal(m,d) |
m+2字节 |
|
|
压缩的“严格”定点数 |
3、日期与时间类型
类型 |
大小 |
范围 |
格式 |
用途 |
year |
1字节 |
1901~2155 |
YYYY |
年份 |
time |
3字节 |
-838:59:59~838:59:59 |
HH:MM:SS |
时间 |
date |
3字节 |
1000-01-01~9999-12-31 |
YYYY-MM-DD |
日期 |
datatime |
8字节 |
1000-01-01 00:00:00~9999-12-31 23:59:597 |
YYYY-MM-DD HH:MM:SS |
日期时间 |
timestamp |
8字节 |
1980-01-01 00:00:01 UTC~2040-01-19 03:14:07 UTC |
YYYY-MM-DD HH:MM:SS |
时间戳 |
4、字符串类型
类型 |
大小 |
用途 |
char |
0-255字节 |
固定长度 |
varchar |
0-65535 字节 |
可变长度 |
tinytext |
0-255字节 |
可变长度 |
text |
0-65535字节 |
可变长度 |
mediumtext |
0-16777215字节 |
可变长度 |
longtext |
0-4294967295字节 |
可变长度 |
enum |
1或2字节 |
枚举类型,最大可达65535个不同的枚举值 |
set |
1、2、3、4或8个字节 |
一个设置,最大可达64个不同的值 |
5、二进制类型
类型 |
大小 |
用途 |
bit(m) |
默认1字节,大约(m+7)/8字节 |
位字段类型 |
binary(m) |
m字节 |
固定长度二进制字符串 |
varbinary(m) |
m+1字节 |
可变长度二进制字符串 |
tinyblob(m) |
0~255字节 |
非常小的blob |
blob(m) |
0~65535字节 |
小的blob |
mediumblob(m) |
0~16777215字节 |
中等大小的blob |
longblob(m) |
0~4294967295字节 |
非常大的blob |