一、数据类型
类型 |
说明 |
取值范围 |
存储需求 |
TINYINT |
非常小的数据 |
有符值: -27 ~ 27-1 无符号值:0 ~ 28-1 |
1字节 |
SMALLINT |
较小的数据 |
有符值: -215 ~ 215-1 无符号值: 0 ~ 216-1 |
2字节 |
MEDIUMINT |
中等大小的数据 |
有符值: -223 ~ 223-1 无符号值: 0 ~ 224-1 |
3字节 |
INT |
标准整数 |
有符值: -231 ~ 231-1 无符号值:0 ~ 232-1 |
4字节 |
BIGINT |
较大的整数 |
有符值: -263 ~263-1 无符号值:0 ~264-1 |
8字节 |
FLOAT |
单精度浮点数 |
±1.1754351e -38 |
4字节 |
DOUBLE |
双精度浮点数 |
±2.2250738585072014e -308 |
8字节 |
DECIMAL |
字符串形式的浮点数 |
Decimal(M,D) |
M+2个字节 |
UNSIGNED属性 标识为无符号数
ZEROFILL属性 宽度(位数)不足以0填充
字符串类型 |
说明 |
长度 |
CHAR[(M)] |
定长字符串 |
M字节 |
VARCHAR[(M)] |
可变字符串 |
可变长度 |
TINYTEXT |
微型文本串 |
0~28–1字节 |
TEXT |
文本串 |
0~216–1字节 |
日期类型
日期类型 |
格式 |
取值范围 |
DATE |
YYYY-MM-DD,日期格式 |
1000-01-01~ 9999-12-31 |
DATETIME |
YY-MM-DD hh:mm:ss: |
1000-01-01 00:00:00 ~9999-12-31 23:59:59 |
TIME |
hh:mm:ss: |
-835:59:59 ~ 838:59:59 |
TIMESTAMP |
YYYYMMDDHHMMSS |
1970年某时刻~2038年某时刻,精度为1秒 |
YEAR |
YYYY格式的年份 |
1901~2155 |
二、字段的约束
名称 |
关键字 |
说明 |
非空约束 |
NOT NULL |
字段不允许为空 |
默认约束 |
DEFAULT |
赋予某字段默认值 |
唯一约束 |
UNIQUE KEY(UK) |
设置字段的值是唯一的 允许为空,但只能有一个空值 |
主键约束 |
PRIMARY KEY(PK) |
设置该字段为表的主键 可唯一标识该表记录 |
外键约束 |
FOREIGN KEY(FK) |
用于在两表之间建立关系, 需要指定引用主表的哪一字段 |
自动增长 |
AUTO_INCREMENT |
设置该列为自增字段 默认每条自增1 通常用于设置主键
|