ZEROFILL和UNSIGNED的区别【mysql】

原创
2019/08/07 23:16
阅读数 564

一、解释

1.UNSIGNED = unsigned = 无符号

有符号包含负数,无符号不包含负数。对于正整数范围而言,无符号能存储的数据是有符号的两倍。

比如TINYINT类型,1字节即8位二进制即2的8次方,有符号能保存的数字范围为-128~127.无符号可以保存的范围为0~255.

由此可知:unsigned的作用就是不能插入负数,如果插入负数默认为零。

数据库数值类型,默认是有符号的。

2.ZEROFILL = zerofill = 填充0

根据你所设置的类型长度,自动填充0

比如你将类型长度设置4,当存入数字1时,数据库里面的值是这样的:0001

二、实例

数据库字段   tinyint类型

1.unsigned

存入1:1

存入-1:0

存入6666:255

2.zerofill

存入1:1,显示为0001

存入-1:0

存入6666:255

3.signed(数据库默认)

存入1:1

存入-1:-1

存入6666:127

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
0 评论
0 收藏
0
分享
返回顶部
顶部