DDL语句(四) -- 数据类型
一、整值型
1、整型
tinyint、smallint、mediumint、int/integer、bigint
1 2 3 4 8
特点:
① 都可以设置无符号和有符号,默认有符号,通过 unsigned 设置无符号
② 如果超出了范围,会报 out of range 异常,插入临界值
③ 长度可以不指定,默认会有一个长度值;
长度代表显示的最大宽度,如果不够则左边用0填充,但需要搭配 zerofill,并且默认变为无符号整型
2、浮点型
定点数:dec/decimal(M, D)
浮点数:
float(M, D) 4
double(M, D) 8
特点:
① M 代表整数部位 + 小数部位的个数 ,D 代表小数部位;
② 如果超出了范围,会报 out of range 异常,插入临界值;
③ M 和 D 都可以省略,但对于定点数,M 默认为10,D 默认为0;
④ 如果精度要求较高,则优先考虑使用定点数
二、字符型
char、varchar、binary、varbinary、enum、set、text、blob
char:固定长度的字符,写法为 char(M),最大长度不能够超过 M,其中 M 可以省略,默认为1;
varchar:可变长度的字符,写法为varchar(M),最大长度不能超过 M,其中 M 不可以省略。
三、日期型
year 年
date 日期
time 时间
datetime 日期 + 时间 8
timestamp 日期 + 时间 4 比较容易受时区、语法模式、版本的影响,更能反映当前时区的真实时间