mysql整数浮点数据类型

数据类型
整型
1、有符号数计算原理如tinyint占1字节即8位:-2的7次方=-128~2的7次方-1=127
tinyint 占1字节 无符号数取值范围0~255,有符号数取值范围-128~127
smallint 占2字节无符号数取值范围0~65535,有符号数取值范围-32768~32768
mediumint 占3字节无符号数取值范围0~16777215,有符号数取值范围-8388608~8388608
int 占4字节无符号数取值范围0~4294967295,有符号数取值范围-2147483648~2147483647
bigint 占8字节无符号数取值范围0~18446744073709551615,
有符号数取值范围-9223372036854775808~9223372036854775807

2、默认显示宽度与其有符号数的最小值的显示宽度相同。因为此处负号是占一个位置的。在不指定宽度的情况下,类型都有默认的显示宽度。
默认:tinyint(4)、smallint(6)、mediumint(9)、int(11)、bigint(20),如int(4)是指定int类型的显示宽度为4。显示宽度是和zerofill配合使用的,不然体现不出效果。当实际宽度小于显示宽度,并且设置zerofill时,才能看到有0补充在值前面。当实际宽度大于显示宽度时显示的是实际的值,也就是说只影响显示效果不影响实际效果。数据宽度不能大于默认宽度。
  注意在navicate或者phpmyadmin中显示数据显示可能不正确,如果你加了zerofill,但是没有补充0,可以到mysql命令行中看下。

3、使用zerofill参数时,mysql会自动加上unsigned属性。那么该整数类型只能表示无符号数,其显示宽度比默认宽度小1。如:
create table pet49 (name tinyint zerofill);
insert into pet49 values(1);
mysql> select * from pet49;
+------+
| name |
+------+
|  001 |
+------+
1 row in set (0.00 sec)

浮点数float、double,定点数decimal
1、float 4字节、double 8字节、decimal(M,D) M+2字节,M为精度是全部(整数位数加小数位数不包含小数点)的位数,D是小数部分的位数,例:float(3,2)、double(3,2)、decimal(3,2),如不指定小数位,浮点数和定点数有其默认的精度,float和double默认会保存实际精度。decimal默认精度位数为10,小数为0,即默认为整数。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值