微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

[MySQL]mysql中int、bigint、smallint 和 tinyint的区别和存储的范围

部门中有个字段存储的是十进制数字,但是表示的意思是转成二进制后,每一个位代表不同功能的开关状态

当超过32个功能开关的时候,就需要将int类型转换成bigint类型,原因就是int只能存储4个字节也就是2的32次方的整型值,装不下了,下面就是具体的存的范围

bigint
从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字)。存储大小为 8 个字节。
int
从 -2^31 (-2,147,483,648) 到 2^31 - 1 (2,647) 的整型数据(所有数字)。存储大小为 4 个字节。int 的 sql-92 同义字为 integer。
smallint
从 -2^15 (-32,768) 到 2^15 - 1 (32,767) 的整型数据。存储大小为 2 个字节。
tinyint
从 0 到 255 的整型数据。存储大小为 1 字节。
注释
支持整数值的地方支持 bigint 数据类型。但是,bigint 用于某些特殊的情况,当整数值超过 int 数据类型支持的范围时,就可以采用 bigint。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐