# 1. 数据类型
# 整数类型
以下参考:https://blog.csdn.net/weixin_30344795/article/details/95559363
对于 5 种整数类型(tinyint、smallint、mediumint、int、bigint),MySQL 还支持在类型名称后面的小括号内指定显示宽度。
注意
括号中的数字并不是指该类型占用的字节数,而是指数据的宽度。
(并不是该类型占用字节数)。
例如 int(5)表示当数值宽度小于 5 位的时候在数字前面填满宽度,如果不显示指定宽度则默认为 int(11)。一般配合 zerofill
使用,顾名思义,zerofill 就是用“0”填充的意思,也就是在数字位数不够的空间用字符“0”填满。
以下几个例子分别描述了填充前后的区别:
(1)创建表 t1,有 id1 和 id2 两个字段,指定其数值宽度分别为 int 和 int(5)。
(2)在 id1 和 id2 中都插入数值 1,可以发现格式没有异常。
(3)分别修改 id1 和 id2 的字段类型,加入 zerofill
参数:
设置了宽度限制后,如果插入大于宽度限制的值,会不会截断或者插不进去报错?
不会对插入的数据有任何影响,还是按照类型的实际精度进行保存。
这个时候,宽度格式实际已经没有意义 。
# 实数类型
- 123456789.987654321 = DECIMAL(18,9)
- 18 表示总数字个数
- 9 表示小数点后数字个数
- 共占用 4+4+1(小数点) = 9 个字节
# 时间类型
# 字符串类型
← 九、日志模块 2. 访问 MySQL →