python的数据库是什么意思_python数据库(一)

今天给大家分享一下数据库里面的数据类型。不同的数据库对 SQL 标准做了不同的拓展。MySQL 除了支持 SQL 标准中的数值类型,如严格数值类型以及近似数值类型,还拓展了新的数值类型,如 BIT 等。

整数类型

整数类型,顾名思义是用来存储整数的。MySQL 支持的整数类型有 SQL 标准中的整数

类型 INTEGER 和 SMALLINT,并在此基础上拓展了新的整数类型,如 TINYINT、

MEDIUMINT、BIGINT。

TINYINT 1字节 (-128,127) (0,255) 小整数值

SMALLINT 2字节 (-32768,32767) (0,65535) 大整数值

MEDIUMINT 3 字节 (-8388608,8388607) (0,16777215) 大整数值

INT/INTEGER 4 字节 (-2147483648,2147483647) (0,4294967295) 大整数值

BIGINT 8 字节(-9233372036854775808,

9223372036854775807)

(0,18446744073709551615) 极大整数值。

看到上面我们可以得出一个结论,那就是不同的整数类型所占用的储存空间大小不同。

说完了整数类型,接下来就是浮点数和定点数类型。

1.浮点数类型包括 FLOAT(单精度)和 DOUBLE(双精度)两种,定点数类型只包括

DEC/DECIMAL/NUMERIC 一种(DEC/DECIMAL 与 NUMERIC 表示的是同一种数据类型,

习惯上使用 DEC 或 DECIMAL)。

然后我会在下面给你们列出浮点数所占空间大小及表数范围:

FLOAT 4 字节

(-3.402823466E+38,

-1.175494351E-38),0,

(1.175494351E-38,

3.402823466351E+38)

0,(1.175494351E-38,

3.402823466E+38)

作用:单精度浮点,数值

DOUBLE 8 字节

(-1.7976931348623157E+308,

-2.2250738585072014E-308),0,

(2.2250738585072014E-308,

1.7976931348623157E+308)

0,(2.2250738585072014E-308,

1.7976931348623157E+308)

作用:双精度浮点,数值。

最好就是定点数类型了。我们先来介绍一下什么叫定点数:定点数类型在数据库中是以字符串形式存的,因此是精确值。定点数只有一种数据类型,即 DECIMAL,该数据类型用于精度要求非常高的计算中,如涉及金钱操作的领域

下面我也会给你们列出定点数所占内存大小及表数范围:

浮点数类型:DECIMAL(M,D) 大小:M+2

表数范围:最小最大取值范围与 DOUBLE 相同;指定 M 和 D 时,有效取值范围由 M 和 D 的大小决定

作用:精度较高的,小数值

DECIMAL(M,D)的用法基本与浮点数类型(M,D)的用法相似,但是一些细节上仍有不

同:

(1) DECIMAL 类型的 M 默认值为 10,D 默认值为 0。如果在创建表时,定义某字段为

DECIMAL 类型而没有带任何参数,则等同于 DECIMAL(10,0),比如我们要存储的数据是

1.23,则保存到数据库中的实际是 1,而不是 1.23。如果只带一个参数,则该参数为 M 值,

D 则取默认值 0。

(2) M 的取值范围为 1~65,取 0 时会被设为默认值 10,超出范围则会报错。

(3) D 的取值范围为 0~30,同时必须满足 D<=M,否则会报错。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值