如果不是无符号类型,BIGINT(20)的取值范围为-9223372036854775808~9223372036854775807。与Java.lang.Long的取值范围完全一致,mybatis会将其映射为Long而BIGINT(20) UNSIGNED的取值范围是0 ~ 1844674407370955161...
- 如果不是无符号类型,BIGINT(20)的取值范围为-9223372036854775808~9223372036854775807。与Java.lang.Long的取值范围完全一致,mybatis会将其映射为Long
- 而BIGINT(20) UNSIGNED的取值范围是0 ~ 18446744073709551615,其中一半的数据超出了Long的取值范围,Mybatis将其映射为BigInteger
- 有符号int最大可以支持到约22亿,远远大于我们的需求和MySQL单表所能支持的性能上限。对于OLTP应用来说,单表的规模一般要保持在千万级别,不会达到22亿上限。
- 无符号int,上限为42亿,这个预留量已经是非常的充足了。使用bigint,会占用更大的磁盘和内存空间,内存空间毕竟有限,无效的占用会导致更多的数据换入换出,额外增加了IO的压力,对性能是不利的。
沃梦达教程
本文标题为:MySQL中BIGINT与Java数据类型对应问题
基础教程推荐
猜你喜欢
- Mybatis-Plus如何配置分页对象 2023-04-12
- 2022年最新java 8 ( jdk1.8u321)安装图文教程 2022-09-03
- java – 在Oracle ucp中找不到oracle.ucp.jdbc.PoolDataSourceFactory 2023-11-07
- java实现图书检索系统 2022-11-16
- IDEA的Swing可视化插件JFormDesigner详解 2022-12-16
- Java将Object转换为数组的代码 2023-05-14
- 无法在Java中执行MySQL删除语句 2023-11-05
- Java中RedisUtils工具类的使用 2023-02-28
- SpringBoot项目jar和war打包部署方式详解 2023-05-08
- swagger中如何给请求添加header 2023-01-02