mysql中哪些数据类型同时包含整数和小数_04-MySQL字段数据类型

 2024-01-27 03:03:22  阅读 0

前言

MySQL中的字段主要有四种数据类型:

整数类型(整数)

小数

字符串类型

时间日期类型

下面我们来详细说说。

整数类型

整数类型的分类

在MySQL中,有五种整数类型:

迷你整数类型:使用1个字节存储整数,最多可存储256个整数(-128~127)。

短整数:使用2个字节来存储整数。

中整数类型:使用3个字节来存储整数。

标准整数类型:int,使用4个字节来存储整数。

大整数:使用8个字节存储。

强调:

(1)如果不知道用哪一个,或者懒得计算,那就用标准整数类型int,这是最常用的。

(2)MySQL中的整数类型默认是有符号的,即正数和负数; 无符号需要使用修改后的整数类型,它表示正整数。

例子:

在指定表中添加年龄字段,要求年龄为正整数:

更改表添加年龄整数;

设计理念

如果需要新建一个整数字段,设计思路如下:

(1) 确保要存储的数据是整数。

(2)估计整数的范围并选择合适的整数类型。

(3) 判断该整数是否需要包含负数。

整数类型取值范围

显示宽度,整数类型的零填充

在很多设计表中,我们可能会看到诸如int(11)之类的数据类型,其中11代表显示宽度。

所谓显示宽度,实际上就是显示时看到的最小位数。

例如int(2)表示无论你的值是什么,你至少可以看到两个数字。 如果保存的值为9,且不足两位数,则会在前面补零,显示为09; 如果你的值为120并且超出了显示宽度,则将直接显示原始值,而不进行零填充。

显示宽度注意事项:

显示宽度仅适用于 MySQL 整数类型。

显示宽度仅指定MySQL整数类型中显示的最小数字个数(可以通过desc查看表字段显示)。

显示宽度仅改变值显示时的样式,并不会改变原始值。

显示宽度与数值类型的取值范围无关。 例如int(10)的取值范围仍然是(-2 147 483 648, 2 147 483 647)。

关于零填充的注意事项:

如果您希望显示宽度自动填零,则必须与此关键字一起使用。

补零只能用于正整数,即要求整数类型是无符号的。

例子:

1、新建一个表,然后在该表中添加num1字段。 要求num1显示3位数字。 如果少于3位,会自动补零:

# 创建一个新表

桌子 (

id int 非空键

);

# 显示宽度有效(正确写法)

更改表添加 num1 int(3);

# 对比:正常写入,显示宽度无效

更改表添加 num2 int(3);

# 对比:普通写法

更改表添加 num3 int;

上述命令中,如果去掉该关键字,将无法实现显示宽度的效果。 执行完上述命令后,我们执行desc命令,比较num1、num2、num3的字段结构:

从上面的截图中可以看到,只有num1有显示宽度并且可以用零填充,而num2和num3则不能。 我们将整数6插入到表中,然后看显示的结果,一目了然:

小数

MySQL 中的小数分为两大类:

浮点数据分为两种类型:

单精度:float,使用4个字节存储,精度范围为6-7位有效数字。

双精度:使用8个字节存储,精度范围为14-15位有效数字。

注意:

超出精度范围的浮点数会自动舍入。

精度可以用整数和小数部分指定。例如

标签: 整型数据

如本站内容信息有侵犯到您的权益请联系我们删除,谢谢!!


Copyright © 2020 All Rights Reserved 京ICP5741267-1号 统计代码