发布网友 发布时间:2022-03-24 23:33
共3个回答
热心网友 时间:2022-03-25 01:03
不是数据类型的问题,bigint存储从-2^63 (-9223372036854775808)到2^63-1(9223372036854775807) 范围内的数字。存储大小为 8 个字节。但是在你取值的时候,因为数据类型是bigint的,程序会自动把你数据转换成int类型,你的数据106594712998的范围超出int的最大范围,所以程序会自动截取,最后出现-779469402。所以在获取值的时候应该改为:result.getLong()取值。热心网友 时间:2022-03-25 02:21
这是msdn抄来的数据范围,bigint足够存了,只不过你取值的时候使用getInt溢出了,32位int存不下这个数。解决方法可以使用【生如夏花】所说的办法,用result.getLong()热心网友 时间:2022-03-25 03:55
从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字),存储大小为 8 个字节。